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

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.

Definition at line 1005 of file Graph.h.

#include <Sawyer/Graph.h>

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

Public Types

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

Public Member Functions

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

Member Typedef Documentation

◆ Reference

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

Definition at line 1012 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 EdgeValue* Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstEdgeValueIterator::Pointer

Definition at line 1013 of file Graph.h.

Constructor & Destructor Documentation

◆ ConstEdgeValueIterator() [1/5]

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 >::ConstEdgeValueIterator::ConstEdgeValueIterator ( )
inline

Definition at line 1014 of file Graph.h.

◆ ConstEdgeValueIterator() [2/5]

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 >::ConstEdgeValueIterator::ConstEdgeValueIterator ( const ConstEdgeValueIterator other)
inline

Definition at line 1015 of file Graph.h.

◆ ConstEdgeValueIterator() [3/5]

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 >::ConstEdgeValueIterator::ConstEdgeValueIterator ( const EdgeValueIterator other)
inline

Definition at line 1016 of file Graph.h.

◆ ConstEdgeValueIterator() [4/5]

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 >::ConstEdgeValueIterator::ConstEdgeValueIterator ( const EdgeIterator other)
inline

Definition at line 1017 of file Graph.h.

◆ ConstEdgeValueIterator() [5/5]

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 >::ConstEdgeValueIterator::ConstEdgeValueIterator ( const ConstEdgeIterator other)
inline

Definition at line 1018 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>
ConstEdgeValueIterator & Sawyer::Container::Graph< V, E, VKey, EKey, Alloc >::ConstEdgeValueIterator::operator= ( const EdgeValueIterator other)
inline

Definition at line 1019 of file Graph.h.

◆ operator*()

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

Definition at line 1020 of file Graph.h.

◆ operator->()

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

Definition at line 1021 of file Graph.h.


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