def __get_ie(ie):
if ie is None:
imp = exp = lambda val: val
elif ie is NotImplemented:
imp = exp = lambda val: NotImplemented
elif isinstance(ie, basestring):
imp, exp = _object_proxy(ie), lambda val: val.id
elif isinstance(ie, types.ModuleType):
imp, exp = ie.loads, ie.dumps
elif isinstance(ie, type) and issubclass(ie, BaseObject):
imp, exp = ie, lambda val: val.id
elif isinstance(ie, type) and issubclass(ie, Enum):
imp, exp = ie, lambda val: val.value
elif callable(ie):
imp = exp = ie
return imp, exp
评论列表
文章目录