1#ifndef GRAPHLIB_INTERNAL_ABSTRACT_UNWEIGHTED_GRAPH_H
2#define GRAPHLIB_INTERNAL_ABSTRACT_UNWEIGHTED_GRAPH_H
23namespace GraphLib::Internal {
38template <val
id_data_type D, val
id_
id_type I, val
id_edge_type<I> E>
59 void add_edge(
const I from_id,
const I to_id)
override
Defines the generic abstract Graph class template supporting directed/undirected and weighted/unweigh...
Abstract base class for a generic graph structure.
virtual void add_edge_impl(const id_type from_id, const edge_type edge)
Helper to add an edge including reverse edge if undirected.
A graph class representing unweighted graphs.
bool is_weighted() const override
Indicates that this graph is unweighted.
void add_edge(const I from_id, const I to_id) override
Adds an unweighted edge from one node to another.
Defines C++20 concepts used for type constraints in the GraphLib library.