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§
pub use crate::ast::AList;pub use crate::ast::AttrList;pub use crate::ast::AttrStmt;pub use crate::ast::NodeID;pub use crate::ast::NodeStmt;pub use crate::ast::Port;
Structs§
- The Right hand side of an edge description. This corresponds to the
EdgeRHSnon-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_stmtnon-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_listnon-terminal of the grammar.
Enums§
- A statement of the graph. This corresponds to the
stmtnon-terminal of the grammar.