Defines C++20 concepts used for type constraints in the GraphLib library. More...
#include <concepts>#include <iostream>#include <iterator>#include <type_traits>Go to the source code of this file.
Concepts | |
| concept | GraphLib::Internal::is_printable |
| Checks whether a type supports streaming to std::ostream. | |
| concept | GraphLib::Internal::valid_data_type |
| Placeholder for user-defined data types used in vertices or edges. | |
| concept | GraphLib::Internal::valid_id_type |
| Concept for a valid ID type in graph components. | |
| concept | GraphLib::Internal::valid_weight_type |
| Concept for a valid edge weight type. | |
| concept | GraphLib::Internal::valid_edge_type |
| Checks whether a type is an aggregate and derived from Edge\<I\>. | |
| concept | GraphLib::Internal::valid_weighted_edge_type |
| Checks whether a type is an aggregate and derived from WeightedEdge<I, W>. | |
| concept | GraphLib::Internal::has_graph_types |
| Checks if a type provides the core type aliases (data_type, id_type, edge_type). | |
| concept | GraphLib::Internal::valid_graph_type |
| Checks if a type derives from Graph<D, I, E>. | |
| concept | GraphLib::Internal::valid_directed_graph_type |
| Checks if a type derives from DirectedGraph. | |
| concept | GraphLib::Internal::valid_undirected_graph_type |
| Checks if a type derives from UndirectedGraph. | |
| concept | GraphLib::Internal::valid_weighted_graph_type |
| Checks if a type derives from WeightedGraph. | |
| concept | GraphLib::Internal::valid_unweighted_graph_type |
| Checks if a type derives from UnweightedGraph. | |
| concept | GraphLib::Internal::valid_unweighted_directed_graph_type |
| Graph type that is both unweighted and directed. | |
| concept | GraphLib::Internal::valid_unweighted_undirected_graph_type |
| Graph type that is both unweighted and undirected. | |
| concept | GraphLib::Internal::valid_weighted_directed_graph_type |
| Graph type that is both weighted and directed. | |
| concept | GraphLib::Internal::valid_weighted_undirected_graph_type |
| Graph type that is both weighted and undirected. | |
Defines C++20 concepts used for type constraints in the GraphLib library.
This file provides reusable concept definitions that constrain ID types, data types, edge types, and graph inheritance hierarchies. These constraints ensure that graph templates and components are used correctly at compile time.
Definition in file concepts.h.