ROSE  0.11.145.0
Public Types | Public Member Functions | List of all members
Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstEdgeIterator 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 >::ConstEdgeIterator

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. A ConstEdgeIterator can be implicitly converted to a ConstEdgeValueIterator.

Definition at line 945 of file Graph.h.

#include <util/Sawyer/Graph.h>

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

Public Types

typedef const EdgeReference
 
typedef const EdgePointer
 
- Public Types inherited from Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeBaseIterator< ConstEdgeIterator, const Edge, const Edge, EdgeList::ConstNodeIterator, const VirtualList< Edge > >
using iterator_category = std::bidirectional_iterator_tag
 
using value_type = const Edge
 
using difference_type = std::ptrdiff_t
 
using pointer = const Edge *
 
using reference = const Edge &
 

Public Member Functions

 ConstEdgeIterator (const ConstEdgeIterator &other)
 
 ConstEdgeIterator (const EdgeIterator &other)
 
ConstEdgeIteratoroperator= (const ConstEdgeIterator &other)
 
const Edgeoperator* () const
 
const Edgeoperator-> () const
 
- Public Member Functions inherited from Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::EdgeBaseIterator< ConstEdgeIterator, const Edge, const Edge, EdgeList::ConstNodeIterator, const VirtualList< Edge > >
ConstEdgeIteratoroperator= (const ConstEdgeIterator &other)
 Assignment. More...
 
bool isEmpty () const
 True if iterator doesn't point to anything. More...
 
ConstEdgeIteratoroperator++ ()
 Increment. More...
 
ConstEdgeIterator operator++ (int)
 Increment. More...
 
ConstEdgeIteratoroperator-- ()
 Decrement. More...
 
ConstEdgeIterator 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< ConstEdgeIterator, const Edge, const Edge, EdgeList::ConstNodeIterator, const VirtualList< Edge > >
 EdgeBaseIterator (const EdgeBaseIterator &other)
 
 EdgeBaseIterator (const EdgeList::ConstNodeIterator &iter)
 
 EdgeBaseIterator (EdgePhase phase, const VirtualList< Edge > *vlist)
 
 EdgeBaseIterator (EdgePhase phase, const BaseIter2 &iter, const VirtualList< Edge > *vlist)
 
const Edgedereference () const
 

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