GraphDom
Toggle main menu visibility
Loading...
Searching...
No Matches
edge_endpoint.h
1
/*
2
* Copyright 2026 Michele Comparini
3
*
4
* SPDX-License-Identifier: Apache-2.0
5
*/
6
7
#ifndef GRAPHDOM_EDGE_ENDPOINT_H
8
#define GRAPHDOM_EDGE_ENDPOINT_H
9
10
#include <type_traits>
11
12
#include "../graph.h"
13
#include "vertex_container.h"
14
15
namespace
graphdom
{
16
template
<
typename
VertexType>
17
template
<
typename
VertexContainerPo
int
erType>
18
class
graph
<VertexType>::edge_endpoint {
19
public
:
20
static_assert
(
21
std::is_same< VertexContainerPointerType , graphdom::graph<VertexType>::vertex_container* >::value ||
22
std::is_same< VertexContainerPointerType , const graphdom::graph<VertexType>::vertex_container* >::value
23
,
24
"The typename 'VertexContainerPointerType' of 'graphdom::graph<VertexType>::edge_endpoint<VertexContainerPointerType>' class must be a pointer to graphdom::graph<VertexType>::vertex_container"
25
);
26
27
edge_endpoint() =
delete
;
28
edge_endpoint(
const
edge_endpoint&) =
delete
;
29
edge_endpoint(edge_endpoint&&) =
delete
;
30
explicit
edge_endpoint(VertexContainerPointerType ptr);
31
32
~edge_endpoint() =
default
;
33
34
VertexContainerPointerType vertex_container_ptr;
35
};
36
}
37
38
#include "impl/edge_endpoint.h"
39
40
#endif
//GRAPHDOM_EDGE_ENDPOINT_H
graphdom::graph
Every graph created using this library is an instance of a concrete class publicly derived,...
Definition
graph.h:43
graphdom
Definition
adj_list.h:16
include
graphdom
detail
edge_endpoint.h
Generated by
1.17.0