]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commitdiff
- mutablemapping adds compiler overhead, so screw it
authorMike Bayer <mike_mp@zzzcomputing.com>
Fri, 15 Aug 2014 22:39:26 +0000 (18:39 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Fri, 15 Aug 2014 22:39:52 +0000 (18:39 -0400)
lib/sqlalchemy/util/_collections.py

index fa27897a11bb6eaa77944657e1df4e1594b77ac3..0904d454ebd5bb81fc39de187f773ec8bb44bd94 100644 (file)
@@ -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)