
Classes | |
| class | GraphAttributeSetter |
| struct | Vertex |
Public Types | |
| using | edgeProperties |
| using | Graph = boost::subgraph<Graph_> |
| using | Graph_ |
| using | graphProperties |
| using | GraphvizAttributes = std::map<cstring, cstring> |
| using | Parents = std::vector<std::pair<vertex_t, EdgeTypeIface *>> |
| using | vertex_t = boost::graph_traits<Graph>::vertex_descriptor |
| using | vertexProperties = boost::property<boost::vertex_attribute_t, GraphvizAttributes, Vertex> |
| enum class | VertexType { TABLE , KEY , ACTION , CONDITION , SWITCH , STATEMENTS , CONTROL , OTHER , STATE , EMPTY } |
Public Member Functions | |
| vertex_t | add_and_connect_vertex (const cstring &name, VertexType type) |
| void | add_edge (const vertex_t &from, const vertex_t &to, const cstring &name) |
| void | add_edge (const vertex_t &from, const vertex_t &to, const cstring &name, unsigned cluster_id) |
| used to connect subgraphs | |
| vertex_t | add_vertex (const cstring &name, VertexType type) |
| std::optional< vertex_t > | merge_other_statements_into_vertex () |
Protected Attributes | |
| vertex_t | exit_v {} |
| Graph * | g {nullptr} |
| Parents | parents {} |
| vertex_t | start_v {} |
| std::vector< const IR::Statement * > | statementsStack {} |
| struct graphs::Graphs::Vertex |
| Class Members | ||
|---|---|---|
| cstring | name | |
| VertexType | type | |
| using graphs::Graphs::edgeProperties |
| using graphs::Graphs::Graph_ |
| using graphs::Graphs::graphProperties |
| void graphs::Graphs::add_edge | ( | const vertex_t & | from, |
| const vertex_t & | to, | ||
| const cstring & | name, | ||
| unsigned | cluster_id ) |
used to connect subgraphs
| from | node from wich edge will start |
| to | node where edge will end |
| name | used as edge label |
| cluster_id | id of cluster, that will be connected to previous cluster |