diff options
Diffstat (limited to 'lib/sqlalchemy/util.py')
-rw-r--r-- | lib/sqlalchemy/util.py | 25 |
1 files changed, 13 insertions, 12 deletions
diff --git a/lib/sqlalchemy/util.py b/lib/sqlalchemy/util.py index 470217936..21f380980 100644 --- a/lib/sqlalchemy/util.py +++ b/lib/sqlalchemy/util.py @@ -93,39 +93,40 @@ class OrderedProperties(object): no append or extend.) """ def __init__(self): - self.__dict__['_OrderedProperties__data'] = OrderedDict() + self.__dict__['_data'] = OrderedDict() def __len__(self): - return len(self.__data) + return len(self._data) def __iter__(self): - return self.__data.itervalues() + return self._data.itervalues() def __add__(self, other): return list(self) + list(other) def __setitem__(self, key, object): - self.__data[key] = object + self._data[key] = object def __getitem__(self, key): - return self.__data[key] + return self._data[key] def __delitem__(self, key): - del self.__data[key] + del self._data[key] def __setattr__(self, key, object): - self.__data[key] = object + self._data[key] = object + _data = property(lambda s:s.__dict__['_data']) def __getattr__(self, key): try: - return self.__dict__['_OrderedProperties__data'][key] + return self._data[key] except KeyError: raise AttributeError(key) def __contains__(self, key): - return key in self.__data + return key in self._data def get(self, key, default=None): if self.has_key(key): return self[key] else: return default def keys(self): - return self.__data.keys() + return self._data.keys() def has_key(self, key): - return self.__data.has_key(key) + return self._data.has_key(key) def clear(self): - self.__data.clear() + self._data.clear() class OrderedDict(dict): """A Dictionary that returns keys/values/items in the order they were added""" |