GraphDom
Toggle main menu visibility
Loading...
Searching...
No Matches
const_adj_list.h
1
/*
2
* Copyright 2026 Michele Comparini
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
#ifndef GRAPHDOM_CONST_ADJ_LIST_H
8
#define GRAPHDOM_CONST_ADJ_LIST_H
9
10
#include "../graph.h"
11
#include "vertex_container.h"
12
#include "base_adj_list.h"
13
#include "adj_list.h"
14
#include "../multiset_graph.h"
15
#include "multiset_graph_adj_list.h"
16
17
namespace
graphdom
{
34
template
<
typename
VertexType>
35
class
graph
<VertexType>::const_adj_list :
public
graph
<VertexType>::base_adj_list< const graph<VertexType>::vertex_container* > {
36
public
:
37
const_adj_list() =
delete
;
38
const_adj_list(
const
const_adj_list& other);
39
const_adj_list(
const
graph<VertexType>::adj_list
& other);
40
const_adj_list(
const
typename
multiset_graph<VertexType>::adj_list
& other);
41
42
~const_adj_list() =
default
;
43
44
const_adj_list& operator=(
const
const_adj_list&) =
delete
;
45
const_adj_list& operator=(const_adj_list&&) =
delete
;
46
47
[[nodiscard]]
graph<VertexType>::adj_list_const_iterator
begin()
const
;
48
[[nodiscard]]
graph<VertexType>::adj_list_const_iterator
end()
const
;
49
[[nodiscard]]
graph<VertexType>::adj_list_const_iterator
cbegin()
const
;
50
[[nodiscard]]
graph<VertexType>::adj_list_const_iterator
cend()
const
;
51
53
friend
class
graph
<VertexType>::
vertex_handle
;
54
friend class
graph
<VertexType>
::vertex_const_handle
;
55
friend class
multiset_graph
<VertexType>
::vertex_handle
;
57
private
:
58
const_adj_list(
59
const graphdom::graph<VertexType>* adj_list_owner_graph_pointer,
60
graphdom::graph<VertexType>::graph_edges_type adj_list_owner_graph_edges_type,
61
const graphdom::graph<VertexType>::vertex_container* adj_list_common_begin_point_vertex_container_pointer,
62
typename graphdom::graph<VertexType>::edges_type_selection_type adj_list_edges_type_selection = none
63
);
64
};
65
}
66
67
#include "impl/const_adj_list.h"
68
69
#endif
//GRAPHDOM_CONST_ADJ_LIST_H
graphdom::graph::adj_list
Every valid instance of this class is a "container-like and non-owning" handle to a subset of the set...
Definition
adj_list.h:32
graphdom::graph::vertex_const_handle
Every valid instance of this class can be used to identify a specific vertex of a graph and to access...
Definition
vertex_const_handle.h:35
graphdom::graph::vertex_handle
Every valid instance of this class can be used to identify a specific vertex of a graph and to access...
Definition
vertex_handle.h:32
graphdom::graph
Every graph created using this library is an instance of a concrete class publicly derived,...
Definition
graph.h:43
graphdom::multiset_graph::adj_list
Every valid instance of this class is a "container-like and non-owning" handle to a subset of the set...
Definition
multiset_graph_adj_list.h:31
graphdom::multiset_graph
Every multiset graph created using this library is an instance of a concrete class publicly derived,...
Definition
multiset_graph.h:19
graphdom
Definition
adj_list.h:16
include
graphdom
detail
const_adj_list.h
Generated by
1.17.0