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

Bidirectional vertex node iterator.

Iterates over the vertex nodes in a list, returning the Vertex when dereferenced. Vertex iterators are stable across insert and erase operations. The difference between VertexIterator and ConstVertexIterator is that the latter returns const references when dereferenced.

Definition at line 1056 of file Graph.h.

#include <Sawyer/Graph.h>

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

Public Types

typedef const VertexReference
 
typedef const VertexPointer
 
- Public Types inherited from Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::VertexBaseIterator< ConstVertexIterator, const Vertex, const Vertex, VertexList::ConstNodeIterator >
using iterator_category = std::bidirectional_iterator_tag
 
using value_type = const Vertex
 
using difference_type = std::ptrdiff_t
 
using pointer = const Vertex *
 
using reference = const Vertex &
 

Public Member Functions

 ConstVertexIterator (const ConstVertexIterator &other)
 
 ConstVertexIterator (const VertexIterator &other)
 
ConstVertexIteratoroperator= (const ConstVertexIterator &other)
 
const Vertexoperator* () const
 
const Vertexoperator-> () const
 
- Public Member Functions inherited from Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::VertexBaseIterator< ConstVertexIterator, const Vertex, const Vertex, VertexList::ConstNodeIterator >
ConstVertexIteratoroperator= (const ConstVertexIterator &other)
 Assignment.
 
VertexBaseIteratoroperator= (const VertexBaseIterator &other)
 
bool isEmpty () const
 True if iterator doesn't point to anything.
 
ConstVertexIteratoroperator++ ()
 Increment.
 
ConstVertexIterator operator++ (int)
 Increment.
 
ConstVertexIteratoroperator-- ()
 Decrement.
 
ConstVertexIterator operator-- (int)
 Decrement.
 
bool operator== (const OtherIter &other) const
 Equality predicate.
 
bool operator!= (const OtherIter &other) const
 Equality predicate.
 

Additional Inherited Members

- Protected Member Functions inherited from Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::VertexBaseIterator< ConstVertexIterator, const Vertex, const Vertex, VertexList::ConstNodeIterator >
 VertexBaseIterator (const VertexBaseIterator &other)
 
 VertexBaseIterator (const VertexList::ConstNodeIterator &base)
 
const Vertexdereference () const
 

Member Typedef Documentation

◆ Reference

template<class V = Nothing, class E = Nothing, class VKey = GraphVertexNoKey<V>, class EKey = GraphEdgeNoKey<E>, class Alloc = DefaultAllocator>
typedef const Vertex& Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstVertexIterator::Reference

Definition at line 1061 of file Graph.h.

◆ Pointer

template<class V = Nothing, class E = Nothing, class VKey = GraphVertexNoKey<V>, class EKey = GraphEdgeNoKey<E>, class Alloc = DefaultAllocator>
typedef const Vertex* Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstVertexIterator::Pointer

Definition at line 1062 of file Graph.h.

Constructor & Destructor Documentation

◆ ConstVertexIterator() [1/3]

template<class V = Nothing, class E = Nothing, class VKey = GraphVertexNoKey<V>, class EKey = GraphEdgeNoKey<E>, class Alloc = DefaultAllocator>
Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstVertexIterator::ConstVertexIterator ( )
inline

Definition at line 1063 of file Graph.h.

◆ ConstVertexIterator() [2/3]

template<class V = Nothing, class E = Nothing, class VKey = GraphVertexNoKey<V>, class EKey = GraphEdgeNoKey<E>, class Alloc = DefaultAllocator>
Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstVertexIterator::ConstVertexIterator ( const ConstVertexIterator other)
inline

Definition at line 1064 of file Graph.h.

◆ ConstVertexIterator() [3/3]

template<class V = Nothing, class E = Nothing, class VKey = GraphVertexNoKey<V>, class EKey = GraphEdgeNoKey<E>, class Alloc = DefaultAllocator>
Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstVertexIterator::ConstVertexIterator ( const VertexIterator other)
inline

Definition at line 1065 of file Graph.h.

Member Function Documentation

◆ operator=()

template<class V = Nothing, class E = Nothing, class VKey = GraphVertexNoKey<V>, class EKey = GraphEdgeNoKey<E>, class Alloc = DefaultAllocator>
ConstVertexIterator & Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstVertexIterator::operator= ( const ConstVertexIterator other)
inline

Definition at line 1066 of file Graph.h.

◆ operator*()

template<class V = Nothing, class E = Nothing, class VKey = GraphVertexNoKey<V>, class EKey = GraphEdgeNoKey<E>, class Alloc = DefaultAllocator>
const Vertex & Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstVertexIterator::operator* ( ) const
inline

Definition at line 1067 of file Graph.h.

◆ operator->()

template<class V = Nothing, class E = Nothing, class VKey = GraphVertexNoKey<V>, class EKey = GraphEdgeNoKey<E>, class Alloc = DefaultAllocator>
const Vertex * Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstVertexIterator::operator-> ( ) const
inline

Definition at line 1068 of file Graph.h.


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