ROSE  0.11.145.0
Public Types | Public Member Functions | List of all members
Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeValueIterator Class Reference

Description

template<class V = Nothing, class E = Nothing, class VKey = GraphVertexNoKey<V>, class EKey = GraphEdgeNoKey<E>, class Alloc = DefaultAllocator>
class Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeValueIterator

Bidirectional edge value iterator.

Iterates over the edge values in a list, returning the user-defined value (type EdgeValue) when dereferenced. Edge iterators are stable across insert and erase operations. The difference between EdgeValueIterator and ConstEdgeValueIterator is that the latter returns const references when dereferenced. An EdgeValueIterator can be impliciatly converted to a ConstEdgeValueIterator.

Definition at line 973 of file Graph.h.

#include <util/Sawyer/Graph.h>

Inheritance diagram for Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeValueIterator:
Inheritance graph
[legend]
Collaboration diagram for Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeValueIterator:
Collaboration graph
[legend]

Public Types

typedef EdgeValueReference
 
typedef EdgeValuePointer
 
- Public Types inherited from Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeBaseIterator< EdgeValueIterator, EdgeValue, Edge, EdgeList::NodeIterator, VirtualList< Edge > >
using iterator_category = std::bidirectional_iterator_tag
 
using value_type = EdgeValue
 
using difference_type = std::ptrdiff_t
 
using pointer = EdgeValue *
 
using reference = EdgeValue &
 

Public Member Functions

 EdgeValueIterator (const EdgeValueIterator &other)
 
 EdgeValueIterator (const EdgeIterator &other)
 
EdgeValueIteratoroperator= (const EdgeValueIterator &other)
 
EdgeValueoperator* () const
 
EdgeValueoperator-> () const
 
- Public Member Functions inherited from Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeBaseIterator< EdgeValueIterator, EdgeValue, Edge, EdgeList::NodeIterator, VirtualList< Edge > >
EdgeValueIteratoroperator= (const EdgeValueIterator &other)
 Assignment. More...
 
bool isEmpty () const
 True if iterator doesn't point to anything. More...
 
EdgeValueIteratoroperator++ ()
 Increment. More...
 
EdgeValueIterator operator++ (int)
 Increment. More...
 
EdgeValueIteratoroperator-- ()
 Decrement. More...
 
EdgeValueIterator 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< EdgeValueIterator, EdgeValue, 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)
 
Edgedereference () const
 

The documentation for this class was generated from the following file: