GraphDom
Toggle main menu visibility
Loading...
Searching...
No Matches
multiset_graph_vertex_handle.h
1
/*
2
* Copyright 2026 Michele Comparini
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
#ifndef GRAPHDOM_MULTISET_GRAPH_VERTEX_HANDLE_H
8
#define GRAPHDOM_MULTISET_GRAPH_VERTEX_HANDLE_H
9
10
#include "../graph.h"
11
#include "vertex_container.h"
12
#include "vertex_handle.h"
13
#include "../multiset_graph.h"
14
15
namespace
graphdom
{
30
template
<
typename
VertexType>
31
class
multiset_graph
<VertexType>::vertex_handle final :
public
graph
<VertexType>::template vertex_base_handle< typename graph<VertexType>::vertex_container* > {
32
public
:
33
vertex_handle() =
delete
;
42
vertex_handle
(
const
vertex_handle& other);
52
explicit
vertex_handle(
const
typename
graph<VertexType>::vertex_handle
& other);
53
54
~vertex_handle() =
default
;
55
56
vertex_handle& operator=(
const
vertex_handle& other);
57
58
[[nodiscard]]
multiset_graph<VertexType>::adj_list
adj_list()
const
;
59
[[nodiscard]]
multiset_graph<VertexType>::adj_list
adj_list(
edge_type
edge_type
)
const
;
60
[[nodiscard]]
typename
graph<VertexType>::const_adj_list
const_adj_list()
const
;
61
[[nodiscard]]
typename
graph<VertexType>::const_adj_list
const_adj_list(
edge_type
edge_type
)
const
;
62
63
friend
typename
graph<VertexType>::vertex_const_handle
;
64
friend
typename
graph<VertexType>::vertex_handle
;
65
friend
typename
multiset_graph<VertexType>::adj_list_iterator;
66
friend
typename
graphdom::multiset_graph<VertexType>
;
67
private
:
68
vertex_handle(
69
const
graph<VertexType>
* vertex_container_owner_ptr,
70
typename
graph<VertexType>::graph_edges_type
vertex_container_owner_et,
71
typename
graph<VertexType>::vertex_container* vertex_container_ptr
72
);
73
};
74
}
75
76
#include "impl/multiset_graph_vertex_handle.h"
77
78
#endif
//GRAPHDOM_MULTISET_GRAPH_VERTEX_HANDLE_H
graphdom::graph::const_adj_list
Every valid instance of this class is a "container-like and non-owning" handle to a subset of the set...
Definition
const_adj_list.h:35
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::vertex_handle::vertex_handle
vertex_handle(const vertex_handle &other)
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
graphdom::edge_type
edge_type
The enumerated type whose values represent the two types of edges of a graph.
Definition
graph.h:21
include
graphdom
detail
multiset_graph_vertex_handle.h
Generated by
1.17.0