ROSE
0.11.96.11
|
Bidirectional edge node iterator.
Iterates over the edge nodes in a list, returning the Edge when dereferenced. Edge iterators are stable across insert and erase operations. The difference between EdgeIterator and ConstEdgeIterator is that the latter returns const references when dereferenced. An EdgeIterator can be impliciatly converted to a ConstEdgeIterator, EdgeValueIterator, or ConstEdgeValueIterator.
#include <Graph.h>
Public Types | |
typedef Edge & | Reference |
typedef Edge * | Pointer |
Public Types inherited from Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeBaseIterator< EdgeIterator, Edge, Edge, EdgeList::NodeIterator, VirtualList< Edge > > | |
using | iterator_category = std::bidirectional_iterator_tag |
using | value_type = Edge |
using | difference_type = std::ptrdiff_t |
using | pointer = Edge * |
using | reference = Edge & |
Public Member Functions | |
EdgeIterator (const EdgeIterator &other) | |
Edge & | operator* () const |
Edge * | operator-> () const |
Public Member Functions inherited from Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeBaseIterator< EdgeIterator, Edge, Edge, EdgeList::NodeIterator, VirtualList< Edge > > | |
EdgeIterator & | operator= (const EdgeIterator &other) |
Assignment. | |
bool | isEmpty () const |
True if iterator doesn't point to anything. | |
EdgeIterator & | operator++ () |
Increment. More... | |
EdgeIterator | operator++ (int) |
Increment. More... | |
EdgeIterator & | operator-- () |
Decrement. More... | |
EdgeIterator | operator-- (int) |
Decrement. More... | |
bool | operator== (const OtherIter &other) const |
Equality predicate. More... | |
bool | operator!= (const OtherIter &other) const |
Equality predicate. More... | |
Additional Inherited Members | |
Protected Member Functions inherited from Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeBaseIterator< EdgeIterator, Edge, Edge, EdgeList::NodeIterator, VirtualList< Edge > > | |
EdgeBaseIterator (const EdgeBaseIterator &other) | |
EdgeBaseIterator (const EdgeList::NodeIterator &iter) | |
EdgeBaseIterator (EdgePhase phase, VirtualList< Edge > *vlist) | |
EdgeBaseIterator (EdgePhase phase, const BaseIter2 &iter, VirtualList< Edge > *vlist) | |
Edge & | dereference () const |