GraphDom
Loading...
Searching...
No Matches
graphdom::graph< VertexType >::adj_list< VertexType > Class Template Reference

Every valid instance of this class is a "container-like and non-owning" handle to a subset of the set of all out-edges of a vertex. More...

#include <adj_list.h>

Public Member Functions

 adj_list (const adj_list &other)
 adj_list (const typename multiset_graph< VertexType >::adj_list &other)
 operator typename multiset_graph< VertexType >::adj_list () const
adj_list & operator= (const adj_list &)=delete
adj_list & operator= (adj_list &&)=delete
graph< VertexType >::adj_list_iterator begin () const
graph< VertexType >::adj_list_iterator end () const
graph< VertexType >::adj_list_const_iterator cbegin () const
graph< VertexType >::adj_list_const_iterator cend () const

Detailed Description

template<typename VertexType>
template<typename VertexType>
class graphdom::graph< VertexType >::adj_list< VertexType >

Every valid instance of this class is a "container-like and non-owning" handle to a subset of the set of all out-edges of a vertex.

An instance adj of this class is invalidated as soon as one of the following scenarios occurs:

  1. adj is constructed using an invalid instance of this class.
  2. adj is constructed using an invalid instance of graphdom::multiset_graph< VertexType >::adj_list.

A valid instance adj of this class is invalidated as soon as the vertex it is associated with is erased.

If *this is invalid then any operation other than the destruction of *this will cause undefined behavior.

Warning
Users of the library MUST ABSOLUTELY NOT write code whose flow depends on the order of the elements in this container, even if the order relationship in which the elements are arranged is (obviously) deterministic.

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