"""
import itertools
+import operator
import weakref
from sqlalchemy import exceptions
from sqlalchemy import orm
def _default_getset(self, collection_class):
attr = self.value_attr
- getter = util.attrgetter(attr)
+ getter = operator.attrgetter(attr)
if collection_class is dict:
setter = lambda o, k, v: setattr(o, attr, v)
else:
# the MIT License: http://www.opensource.org/licenses/mit-license.php
import operator
+from operator import attrgetter, itemgetter
import weakref
from sqlalchemy import util
-from sqlalchemy.util import attrgetter, itemgetter, EMPTY_SET
+from sqlalchemy.util import EMPTY_SET
from sqlalchemy.orm import interfaces, collections, exc
import sqlalchemy.exceptions as sa_exc
import copy
import inspect
+import operator
import sets
import sys
import weakref
import sqlalchemy.exceptions as sa_exc
from sqlalchemy import schema
import sqlalchemy.util as sautil
-from sqlalchemy.util import attrgetter
+
__all__ = ['collection', 'collection_adapter',
after a session flush.
"""
- return lambda: MappedCollection(attrgetter(attr_name))
+ return lambda: MappedCollection(operator.attrgetter(attr_name))
def mapped_collection(keyfunc):
"""
from itertools import chain
+from operator import itemgetter
from sqlalchemy import sql, util, log, schema
from sqlalchemy import exc as sa_exc
(process, labels) = zip(*[query_entity.row_processor(self, context, custom_rows) for query_entity in self._entities])
if not single_entity:
- labels = dict((label, property(util.itemgetter(i)))
+ labels = dict((label, property(itemgetter(i)))
for i, label in enumerate(labels)
if label)
rowtuple = type.__new__(type, "RowTuple", (tuple,), labels)
"""
import itertools, re
+from operator import attrgetter
+
from sqlalchemy import util, exc
from sqlalchemy.sql import operators, visitors
from sqlalchemy import types as sqltypes
delattr(self, attr)
def _expr_attr_func(name):
- get = util.attrgetter(name)
+ get = attrgetter(name)
def attr(self):
try:
return get(self)
_label = property(_label)
def _proxy_attr(name):
- get = util.attrgetter(name)
+ get = attrgetter(name)
def attr(self):
return get(self.element)
return property(attr)
except ImportError:
import pickle
-
-try:
- from operator import attrgetter
-except ImportError:
- def attrgetter(attribute):
- return lambda value: getattr(value, attribute)
-
-try:
- from operator import itemgetter
-except ImportError:
- def itemgetter(attribute):
- return lambda value: value[attribute]
-
if sys.version_info >= (2, 5):
class PopulateDict(dict):
"""a dict which populates missing values via a creation function.
def clear(self):
self._data.clear()
+
class OrderedDict(dict):
- """A Dictionary that returns keys/values/items in the order they were added."""
+ """A dict that returns keys/values/items in the order they were added."""
def __init__(self, ____sequence=None, **kwargs):
self._list = []
def clear(self):
self._list = []
dict.clear(self)
-
+
def sort(self, fn=None):
self._list.sort(fn)
-
+
def update(self, ____sequence=None, **kwargs):
if ____sequence is not None:
if hasattr(____sequence, 'keys'):