Open barraponto opened 9 years ago
If you lookup the same vertex (or edge) twice:
V_a = graph.vertices.index.lookup(somelabel=someid).next() V_b = graph.vertices.index.lookup(somelabel=someid).next()
Then they're considered equal:
V_a == V_b # true
But not identical:
V_a is V_b # false
A consequence of this behavior is that set([V_a, V_b]) will return a set with two equal elements although I would expect only one.
set([V_a, V_b])
This comes from bulbs.element.Element implementing __eq__ but not __hash__.
bulbs.element.Element
__eq__
__hash__
If you lookup the same vertex (or edge) twice:
Then they're considered equal:
But not identical:
A consequence of this behavior is that
set([V_a, V_b])
will return a set with two equal elements although I would expect only one.This comes from
bulbs.element.Element
implementing__eq__
but not__hash__
.