Merged grc developer branch r10679:10938
[debian/gnuradio] / grc / src / utils / __init__.py
index 73a2ed562f10ccdbb81baf2317d35da104c0467c..2682db8125724ce123916a42d0fdb3b8f35f4385 100644 (file)
@@ -1,5 +1,5 @@
 """
-Copyright 2008 Free Software Foundation, Inc.
+Copyright 2009 Free Software Foundation, Inc.
 This file is part of GNU Radio
 
 GNU Radio Companion is free software; you can redistribute it and/or
@@ -17,66 +17,4 @@ along with this program; if not, write to the Free Software
 Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
 """
 
-from UserDict import DictMixin
-
-class odict(DictMixin):
-
-       def __init__(self, d={}):
-               self._keys = list(d.keys())
-               self._data = dict(d.copy())
-
-       def __setitem__(self, key, value):
-               if key not in self._data:
-                       self._keys.append(key)
-               self._data[key] = value
-
-       def __getitem__(self, key):
-               return self._data[key]
-
-       def __delitem__(self, key):
-               del self._data[key]
-               self._keys.remove(key)
-
-       def keys(self):
-               return list(self._keys)
-
-       def copy(self):
-               copy_dict = odict()
-               copy_dict._data = self._data.copy()
-               copy_dict._keys = list(self._keys)
-               return copy_dict
-
-       def insert_after(self, pos_key, key, val):
-               """
-               Insert the new key, value entry after the entry given by the position key.
-               If the positional key is None, insert at the end.
-               @param pos_key the positional key
-               @param key the key for the new entry
-               @param val the value for the new entry
-               """
-               index = (pos_key is None) and len(self._keys) or self._keys.index(pos_key)
-               assert key not in self._keys
-               self._keys.insert(index+1, key)
-               self._data[key] = val
-
-       def insert_before(self, pos_key, key, val):
-               """
-               Insert the new key, value entry before the entry given by the position key.
-               If the positional key is None, insert at the begining.
-               @param pos_key the positional key
-               @param key the key for the new entry
-               @param val the value for the new entry
-               """
-               index = (pos_key is not None) and self._keys.index(pos_key) or 0 
-               assert key not in self._keys
-               self._keys.insert(index, key)
-               self._data[key] = val
-
-def exists_or_else(d, key, alt):
-       if d.has_key(key): return d[key]
-       else: return alt
-
-def listify(d, key):
-       obj = exists_or_else(d, key, [])
-       if isinstance(obj, list): return obj
-       return [obj]
+from odict import odict