summaryrefslogtreecommitdiff
path: root/lib/sqlalchemy/util/compat.py
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2010-12-12 13:01:34 -0500
committerMike Bayer <mike_mp@zzzcomputing.com>2010-12-12 13:01:34 -0500
commit0d71ea8126137d2b3d4141aa0fb30c2e64376d44 (patch)
treeedcc99227a474a61686f277fdc36cf2b0960e14c /lib/sqlalchemy/util/compat.py
parent6d5dd2214a4cc6340d8f07147a43fac03a12b040 (diff)
downloadsqlalchemy-0d71ea8126137d2b3d4141aa0fb30c2e64376d44.tar.gz
- inlinings and callcount reductions
- add test coverage for the rare case of noload->lazyload + pickle
Diffstat (limited to 'lib/sqlalchemy/util/compat.py')
-rw-r--r--lib/sqlalchemy/util/compat.py10
1 files changed, 10 insertions, 0 deletions
diff --git a/lib/sqlalchemy/util/compat.py b/lib/sqlalchemy/util/compat.py
index 59dd9eaf0..79dd6228f 100644
--- a/lib/sqlalchemy/util/compat.py
+++ b/lib/sqlalchemy/util/compat.py
@@ -188,6 +188,16 @@ else:
def decode_slice(slc):
return (slc.start, slc.stop, slc.step)
+if sys.version_info >= (2, 6):
+ from operator import attrgetter as dottedgetter
+else:
+ def dottedgetter(attr):
+ def g(obj):
+ for name in attr.split("."):
+ obj = getattr(obj, name)
+ return obj
+ return g
+
import decimal