diff options
author | Jason Kirtland <jek@discorporate.us> | 2007-11-03 20:23:26 +0000 |
---|---|---|
committer | Jason Kirtland <jek@discorporate.us> | 2007-11-03 20:23:26 +0000 |
commit | 429e69db67baa8fc93ff2b55361ba2831cc26144 (patch) | |
tree | d513a330fff0a9ff6313e78f28d8f12a7d399ade /lib/sqlalchemy/topological.py | |
parent | 4210a1ef236e0fbc65878dd1a1ddcc8e13d43c45 (diff) | |
download | sqlalchemy-429e69db67baa8fc93ff2b55361ba2831cc26144.tar.gz |
- Removed equality, truth and hash() testing of mapped instances. Mapped
classes can now implement arbitrary __eq__ and friends. [ticket:676]
Diffstat (limited to 'lib/sqlalchemy/topological.py')
-rw-r--r-- | lib/sqlalchemy/topological.py | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/lib/sqlalchemy/topological.py b/lib/sqlalchemy/topological.py index d38c5cf4a..a47968519 100644 --- a/lib/sqlalchemy/topological.py +++ b/lib/sqlalchemy/topological.py @@ -153,20 +153,20 @@ class QueueDependencySorter(object): nodes = {} edges = _EdgeCollection() for item in allitems + [t[0] for t in tuples] + [t[1] for t in tuples]: - if item not in nodes: + if id(item) not in nodes: node = _Node(item) - nodes[item] = node + nodes[id(item)] = node for t in tuples: if t[0] is t[1]: if allow_self_cycles: - n = nodes[t[0]] + n = nodes[id(t[0])] n.cycles = util.Set([n]) continue else: raise CircularDependencyError("Self-referential dependency detected " + repr(t)) - childnode = nodes[t[1]] - parentnode = nodes[t[0]] + childnode = nodes[id(t[1])] + parentnode = nodes[id(t[0])] edges.add((parentnode, childnode)) queue = [] @@ -202,7 +202,7 @@ class QueueDependencySorter(object): node = queue.pop() if not hasattr(node, '_cyclical'): output.append(node) - del nodes[node.item] + del nodes[id(node.item)] for childnode in edges.pop_node(node): queue.append(childnode) return self._create_batched_tree(output) |