diff options
author | Mike Bayer <mike_mp@zzzcomputing.com> | 2014-08-15 18:39:26 -0400 |
---|---|---|
committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2014-08-15 18:39:26 -0400 |
commit | ca69e4560333a1a7e3a2dafd746be851cc89228c (patch) | |
tree | 93de172dcba203948475357528296b4731765d66 | |
parent | 239464a98a4b1a2d6e5e39d998911ec7a8fe3666 (diff) | |
download | sqlalchemy-ca69e4560333a1a7e3a2dafd746be851cc89228c.tar.gz |
- mutablemapping adds compiler overhead, so screw it
-rw-r--r-- | lib/sqlalchemy/util/_collections.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/lib/sqlalchemy/util/_collections.py b/lib/sqlalchemy/util/_collections.py index fa27897a1..0904d454e 100644 --- a/lib/sqlalchemy/util/_collections.py +++ b/lib/sqlalchemy/util/_collections.py @@ -13,7 +13,6 @@ import operator from .compat import threading, itertools_filterfalse from . import py2k import types -from collections import MutableMapping EMPTY_SET = frozenset() @@ -265,13 +264,18 @@ class OrderedDict(dict): def __iter__(self): return iter(self._list) - keys = MutableMapping.keys - values = MutableMapping.values - items = MutableMapping.items + def keys(self): + return list(self) + + def values(self): + return [self[key] for key in self._list] + + def items(self): + return [(key, self[key]) for key in self._list] if py2k: def itervalues(self): - return iter([self[key] for key in self._list]) + return iter(self.values()) def iterkeys(self): return iter(self) |