Alexandria 2.31.0
SDC-CH common library for the Euclid project
|
#include <GraphvizGenerator.h>
Public Member Functions | |
GraphvizGenerator (const std::string &label) | |
void | enter (const NodeBase *node) override |
void | exit (const NodeBase *) override |
std::string | str () const |
Private Attributes | |
int64_t | m_unique_id |
std::stringstream | m_stream |
std::list< int64_t > | m_stack |
Concrete implementation of the Visitor class for the computing trees. It will generate a string representing the graph in a format compatible with graphviz.
Definition at line 32 of file GraphvizGenerator.h.
|
explicit |
Constructor
label | Name of the whole graph |
Definition at line 28 of file GraphvizGenerator.cpp.
References std::endl(), Pyston::escape(), and m_stream.
|
overridevirtual |
Called when a node is entered
Implements Pyston::Visitor.
Definition at line 32 of file GraphvizGenerator.cpp.
References std::list< T >::back(), std::list< T >::empty(), std::endl(), Pyston::escape(), m_stack, m_stream, m_unique_id, std::list< T >::push_back(), and Pyston::NodeBase::repr().
|
overridevirtual |
Called when a node is left
Implements Pyston::Visitor.
Definition at line 41 of file GraphvizGenerator.cpp.
References m_stack, and std::list< T >::pop_back().
std::string Pyston::GraphvizGenerator::str | ( | ) | const |
Definition at line 45 of file GraphvizGenerator.cpp.
References m_stream, and std::stringstream::str().
Referenced by Example::generateGraphviz().
|
private |
Definition at line 60 of file GraphvizGenerator.h.
|
private |
Definition at line 59 of file GraphvizGenerator.h.
Referenced by enter(), GraphvizGenerator(), and str().
|
private |
Definition at line 58 of file GraphvizGenerator.h.
Referenced by enter().