GraphDom
Loading...
Searching...
No Matches
graphdom::multiset_graph< VertexType > Class Template Referenceabstract

Every multiset graph created using this library is an instance of a concrete class publicly derived, directly or indirectly, from this polymorphic template class. More...

#include <multiset_graph.h>

Inheritance diagram for graphdom::multiset_graph< VertexType >:
Collaboration diagram for graphdom::multiset_graph< VertexType >:

Classes

class  adj_list
 Every valid instance of this class is a "container-like and non-owning" handle to a subset of the set of all out-edges of a vertex belongings to a multiset graph. More...
class  vertex_handle
 Every valid instance of this class can be used to identify a specific vertex of a multiset graph and to access its core by reference or pointer. More...

Public Member Functions

 ~multiset_graph () override=default
 To be polymorphic, this class has a virtual destructor.
virtual vertex_handle insert_vertex (const VertexType &v_core)=0
virtual vertex_handle insert_vertex (VertexType &&v_core)=0
Public Member Functions inherited from graphdom::graph< VertexType >
virtual ~graph ()=default
 To be polymorphic, this class has a virtual destructor.
virtual std::size_t order () const =0
 Returns the order of *this, i.e. the number of vertices inside the graph.
virtual void erase_vertex (const vertex_const_handle &vertex)=0
 Removes the vertex identified by vertex.
virtual adj_list_iterator erase_edge (const adj_list_const_iterator &)=0

Detailed Description

template<typename VertexType>
class graphdom::multiset_graph< VertexType >

Every multiset graph created using this library is an instance of a concrete class publicly derived, directly or indirectly, from this polymorphic template class.

Creating an object of a user-defined class derived, directly or indirectly, from this one will cause undefined behavior.

Member Function Documentation

◆ insert_vertex() [1/2]

template<typename VertexType>
virtual vertex_handle graphdom::multiset_graph< VertexType >::insert_vertex ( const VertexType & v_core)
nodiscardpure virtual

◆ insert_vertex() [2/2]

template<typename VertexType>
virtual vertex_handle graphdom::multiset_graph< VertexType >::insert_vertex ( VertexType && v_core)
nodiscardpure virtual

Inserts in *this a vertex having v_core as core.

Parameters
v_core
Returns
A valid handle of the inserted vertex.

Implemented in graphdom::labeled_vertex_multiset_graph< VertexType, VertexLabelType, VertexLabellerType >.


The documentation for this class was generated from the following file: