From: Mike Bayer Date: Sun, 12 Oct 2008 05:13:46 +0000 (+0000) Subject: reduce cruft related to serializable loaders X-Git-Tag: rel_0_5rc2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=40b1aa8f24b97dd3c8d691ecfd6c0cd5420eb105;p=thirdparty%2Fsqlalchemy%2Fsqlalchemy.git reduce cruft related to serializable loaders --- diff --git a/lib/sqlalchemy/orm/strategies.py b/lib/sqlalchemy/orm/strategies.py index 7439ab68b7..3c156b70f2 100644 --- a/lib/sqlalchemy/orm/strategies.py +++ b/lib/sqlalchemy/orm/strategies.py @@ -222,23 +222,9 @@ log.class_logger(DeferredColumnLoader) class LoadDeferredColumns(object): """serializable loader object used by DeferredColumnLoader""" - def __init__(self, state, key, keys): - self.state = state - self.key = key - self.keys = keys + def __init__(self, *args): + self.state, self.key, self.keys = args - def __getstate__(self): - return { - 'state':self.state, - 'key':self.key, - 'keys':self.keys - } - - def __setstate__(self, state): - self.state = state['state'] - self.key = state['key'] - self.keys = state['keys'] - def __call__(self): state = self.state @@ -502,25 +488,15 @@ log.class_logger(LazyLoader) class LoadLazyAttribute(object): """serializable loader object used by LazyLoader""" - def __init__(self, state, key, options, path): - self.state = state - self.key = key - self.options = options - self.path = path + def __init__(self, *args): + self.state, self.key, self.options, self.path = args def __getstate__(self): - return { - 'state':self.state, - 'key':self.key, - 'options':self.options, - 'path':serialize_path(self.path) - } + return (self.state, self.key, self.options, serialize_path(self.path)) def __setstate__(self, state): - self.state = state['state'] - self.key = state['key'] - self.options = state['options'] - self.path = deserialize_path(state['path']) + self.state, self.key, self.options, path = state + self.path = deserialize_path(path) def __call__(self): state = self.state