made IDENTITY a function of adaptor module

--HG--
extra : convert_revision : svn%3Ab85faa78-f9eb-468e-a121-7cced6da292c%40976
This commit is contained in:
Ismael Carnales 2009-03-10 16:57:27 +00:00
parent 698e6e73ea
commit 63e6ce6e47
1 changed files with 3 additions and 4 deletions

View File

@ -12,12 +12,13 @@ def adaptize(func):
return _adaptor
_IDENTITY = lambda v: v
def IDENTITY(v):
return v
class ItemAdaptorMeta(type):
def __new__(meta, class_name, bases, attrs):
da = attrs.get('default_adaptor') or _IDENTITY
da = attrs.get('default_adaptor') or IDENTITY
attrs['default_adaptor'] = staticmethod(adaptize(da))
cls = type.__new__(meta, class_name, bases, attrs)
@ -43,8 +44,6 @@ class ItemAdaptorMeta(type):
class ItemAdaptor(object):
__metaclass__ = ItemAdaptorMeta
IDENTITY = _IDENTITY
item_class = None
field_adaptors = {}