diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2010-12-12 13:01:34 -0500 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2010-12-12 13:01:34 -0500 |
| commit | 0d71ea8126137d2b3d4141aa0fb30c2e64376d44 (patch) | |
| tree | edcc99227a474a61686f277fdc36cf2b0960e14c /lib/sqlalchemy/util | |
| parent | 6d5dd2214a4cc6340d8f07147a43fac03a12b040 (diff) | |
| download | sqlalchemy-0d71ea8126137d2b3d4141aa0fb30c2e64376d44.tar.gz | |
- inlinings and callcount reductions
- add test coverage for the rare case of noload->lazyload + pickle
Diffstat (limited to 'lib/sqlalchemy/util')
| -rw-r--r-- | lib/sqlalchemy/util/__init__.py | 2 | ||||
| -rw-r--r-- | lib/sqlalchemy/util/compat.py | 10 |
2 files changed, 11 insertions, 1 deletions
diff --git a/lib/sqlalchemy/util/__init__.py b/lib/sqlalchemy/util/__init__.py index aa150874f..9119e35b7 100644 --- a/lib/sqlalchemy/util/__init__.py +++ b/lib/sqlalchemy/util/__init__.py @@ -6,7 +6,7 @@ from compat import callable, cmp, reduce, defaultdict, py25_dict, \ threading, py3k, jython, win32, set_types, buffer, pickle, \ - update_wrapper, partial, md5_hex, decode_slice + update_wrapper, partial, md5_hex, decode_slice, dottedgetter from _collections import NamedTuple, ImmutableContainer, frozendict, \ Properties, OrderedProperties, ImmutableProperties, OrderedDict, \ 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 |
