7#ifndef GRAPHDOM_MULTISET_GRAPH_ADJ_LIST_ITERATOR_H
8#define GRAPHDOM_MULTISET_GRAPH_ADJ_LIST_ITERATOR_H
11#include "adj_list_base_iterator.h"
12#include "../multiset_graph.h"
15 template <
typename VertexType>
16 class multiset_graph<VertexType>::adj_list_iterator final :
public graph<VertexType>::template adj_list_base_iterator<typename graph<VertexType>::vertex_container* > {
18 adj_list_iterator() =
default;
19 adj_list_iterator(
const adj_list_iterator& other);
20 adj_list_iterator(
const typename graph<VertexType>::adj_list_iterator& other);
22 ~adj_list_iterator() =
default;
24 multiset_graph<VertexType>::vertex_handle operator->()
const;
25 multiset_graph<VertexType>::vertex_handle operator*()
const;
27 adj_list_iterator& operator=(
const adj_list_iterator& other);
28 adj_list_iterator& operator++();
29 [[nodiscard]] adj_list_iterator operator++(
int);
31 friend class graph<VertexType>::adj_list_const_iterator;
32 friend class graph<VertexType>::adj_list_iterator;
33 friend class multiset_graph<VertexType>::adj_list;
35 adj_list_iterator( const typename graph<VertexType>::template adj_list_base_iterator<typename graph<VertexType>::vertex_container* >& other );
37 const graph<VertexType>* iterator_owner_pointer,
38 typename graph<VertexType>::graph_edges_type iterator_owner_graph_edges_type,
39 typename graph<VertexType>::vertex_container* edge_begin_point_vertex_container,
40 typename graph<VertexType>::edges_type_selection_type edges_type_restriction,
41 graphdom::edge_type inner_iterator_edge_current_type
44 const graph<VertexType>* iterator_owner_pointer,
45 typename graph<VertexType>::graph_edges_type iterator_owner_graph_edges_type,
46 typename graph<VertexType>::vertex_container* edge_begin_point_vertex_container,
47 typename graph<VertexType>::edges_type_selection_type edges_type_restriction,
48 graphdom::edge_type inner_iterator_edge_current_type,
49 const typename graph<VertexType>::template adj_set<typename graph<VertexType>::vertex_container*>::iterator& inner_iterator
54#include "impl/multiset_graph_adj_list_iterator.h"
Every graph created using this library is an instance of a concrete class publicly derived,...
Definition graph.h:43
Every multiset graph created using this library is an instance of a concrete class publicly derived,...
Definition multiset_graph.h:19