Module dot_parser::subgraph_free

source ·
Expand description

This module represents a flat graph, i.e. a graph without subgraph. To flatten the graph, existing subgraphs are transformed into their individual nodes: e.g. the statement a -> { b c } is transformed into two statements: a -> b and a -> c. Edge attributes are copied: therefore, a graph can be flattened only if the attribute type A implements Copy.

Re-exports§

Structs§

  • The Right hand side of an edge description. This corresponds to the EdgeRHS non-terminal of the grammar. Notice that the grammar allows multiple EdgeRHS in sequence, to chain edges: A -> B -> C. Notice that, contrary to Ast::EdgeRHS, Ast::FlatGraph::EdgeRHS can not contain a subgraph.
  • The description of an edge. This corresponds to the edge_stmt non-terminal of the grammar.
  • A graph, very similar to Ast::Graph, but can not contain subgraphs.
  • A list of statements. This corresponds to the stmt_list non-terminal of the grammar.

Enums§

  • A statement of the graph. This corresponds to the stmt non-terminal of the grammar.