|
| Graph (const Graph &)=delete |
|
| Graph (Graph &&)=default |
|
Graph & | operator= (Graph &&)=default |
|
NodeRef | createNode (T &&data) |
| Creates a node and retains ownership of it. More...
|
|
void | swapNode (NodeRef node, Graph< T, U > &otherGraph) |
|
void | swapEdge (EdgeRef edge, Graph< T, U > &otherGraph) |
|
NodeRef | createNode () |
|
void | replaceNode (const NodeRef &old, const NodeRef &newTail, const NodeRef &newHead_=nullptr) |
| Replace a node in the graph with a generic set of nodes. More...
|
|
EdgeRef | createEdge (NodeRef tail, NodeRef head) |
| Creates a directed edge and retains ownership of it. More...
|
|
EdgeRef | createEdge (NodeRef tail, NodeRef head, U &&data) |
|
EdgeRef | getEdge (NodeRef tail, NodeRef head) |
| Get a reference to the edge between two nodes if it exists. More...
|
|
void | deleteNode (NodeRef n, bool deleteEdges=true) |
| Deletes a node from the graph. More...
|
|
void | deleteEdge (EdgeRef e) |
| Deletes a edge from the graph. More...
|
|
const std::vector< NodeRef > | getMutableNodes () |
|
const std::vector< EdgeRef > | getMutableEdges () |
|
void | printEdges () |
|
void | printNodes () const |
|
template<typename T, typename U>
class nom::Graph< T, U >
A simple graph implementation.
Everything is owned by the graph to simplify storage concerns.
Definition at line 30 of file Graph.h.