Dan Kortschak
39cd12e938
graph/iterator: add lazy ordered node iterators
2020-07-02 07:47:46 +09:30
Dan Kortschak
2db33926ac
graph/iterator: extend iteration tests and fix counting error
2020-07-02 07:47:46 +09:30
Dan Kortschak
16da37cc66
graph/iterator: implement unsafe node iterators
2020-07-02 07:47:46 +09:30
Dan Kortschak
91d83a4f35
graph/iterator: add fast paths for node slices and add tests
...
Fix bugs in NodeSlice methods:
- ImplicitNodes did not return nil for an empty set of nodes.
- OrderedNodes returned one too many nodes if Next has been called.
2020-07-02 07:47:46 +09:30
Dan Kortschak
d4ef54c821
graph/iterator: implement edge and line based lazy node iterator
2020-07-02 07:47:46 +09:30
Dan Kortschak
2a132c9421
graph/iterator: consolidate node iterators
2019-10-13 07:56:07 +10:30
Dan Kortschak
dafd13b32d
graph/iterator: guard against iteration panic
...
The reflect package panics when any of Key, Value or Next are called
after Next returns false. We don't do that in the other iterators, so
we shouldn't do it here.
2019-07-20 21:02:08 +09:30
Dan Kortschak
b8a36307b8
graph/iterator: properly test iterator reset
2019-07-20 19:50:24 +09:30
Dan Kortschak
2120b82d14
graph/iterator: add unordered node iterator
2019-07-20 18:24:32 +09:30
Dan Kortschak
761876748e
graph: make edges and lines reversible
2019-03-13 07:14:55 +10:30
Dan Kortschak
2df0688894
graph/simple: test graph implementations with testgraph package
...
Fix bugs found by testgraph.
2018-11-21 11:35:03 +10:30
Dan Kortschak
b73a2c92ff
graph: add node, edge and line iterators
2018-09-23 09:25:56 +09:30