diff options
| author | Mike Bayer <mike_mp@zzzcomputing.com> | 2015-12-09 19:07:51 -0500 |
|---|---|---|
| committer | Mike Bayer <mike_mp@zzzcomputing.com> | 2015-12-09 19:15:12 -0500 |
| commit | b606e47ddc541952c1d4c1b6d010fc72249af234 (patch) | |
| tree | 36f58c832c8f493e7eb036d7fbf1c743a64cbffa /lib/sqlalchemy/orm/dynamic.py | |
| parent | e57bf796169282f69187f50665f5ea233c2c9ab7 (diff) | |
| download | sqlalchemy-b606e47ddc541952c1d4c1b6d010fc72249af234.tar.gz | |
- refactor of adapt_like_to_iterable(), fixes #3457.
Includes removal of adapt_like_to_iterable() as well
as _set_iterable(), uses __slots__ for collectionadapter,
does much less duck typing of collections.
Diffstat (limited to 'lib/sqlalchemy/orm/dynamic.py')
| -rw-r--r-- | lib/sqlalchemy/orm/dynamic.py | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/lib/sqlalchemy/orm/dynamic.py b/lib/sqlalchemy/orm/dynamic.py index aedd863f8..ca593765f 100644 --- a/lib/sqlalchemy/orm/dynamic.py +++ b/lib/sqlalchemy/orm/dynamic.py @@ -128,17 +128,16 @@ class DynamicAttributeImpl(attributes.AttributeImpl): dict_[self.key] = True return state.committed_state[self.key] - def set(self, state, dict_, value, initiator, + def set(self, state, dict_, value, initiator=None, passive=attributes.PASSIVE_OFF, - check_old=None, pop=False): + check_old=None, pop=False, _adapt=True): if initiator and initiator.parent_token is self.parent_token: return if pop and value is None: return - self._set_iterable(state, dict_, value) - def _set_iterable(self, state, dict_, iterable, adapter=None): + iterable = value new_values = list(iterable) if state.has_identity: old_collection = util.IdentitySet(self.get(state, dict_)) |
