moonrockz/diagrams-mermaid/state-ast
Types
Diagram
pub struct Diagram {
header : String
statements : ReadOnlyArray[Statement]
front_matter : String?
directives : ReadOnlyArray[String]
} derive(@moonbitlang/core/debug.Debug)Diagram::equal
fn Diagram::equal(a : Diagram, b : Diagram) -> BoolDiagram::new
fn Diagram::new(statements : ArrayView[Statement], header? : String, front_matter? : String, directives? : ArrayView[String]) -> DiagramDiagram::not_equal
fn Diagram::not_equal(x : Diagram, y : Diagram) -> BoolDiagram::to_repr
fn Diagram::to_repr(Diagram) -> @moonbitlang/core/debug.Reprimpl Eq for Diagram
Eq::equal
fn equal(a : Diagram, b : Diagram) -> BoolStatement
pub(all) struct Statement {
kind : StatementKind
span : @moonrockz/diagrams.Span
} derive(@moonbitlang/core/debug.Debug)Statement::equal
fn Statement::equal(a : Statement, b : Statement) -> BoolStatement::not_equal
fn Statement::not_equal(x : Statement, y : Statement) -> BoolStatement::to_repr
fn Statement::to_repr(Statement) -> @moonbitlang/core/debug.Reprimpl Eq for Statement
Eq::equal
fn equal(a : Statement, b : Statement) -> BoolStatementKind
pub(all) enum StatementKind {
State(id~ : String, label~ : String?, role~ : String?, description~ : String?, classes~ : ReadOnlyArray[String])
Composite(id~ : String, label~ : String?)
EndComposite
Concurrent
Transition(source~ : String, target~ : String, label~ : String?, source_classes~ : ReadOnlyArray[String], target_classes~ : ReadOnlyArray[String])
Description(id~ : String, text~ : String)
Note(target~ : String, placement~ : String, text~ : String)
FloatingNote(id~ : String, text~ : String)
Direction(String)
AccTitle(String)
AccDescription(String)
Presentation(String)
Comment(String)
Invalid(String)
} derive(Eq, @moonbitlang/core/debug.Debug)Source statements retain declaration order. Composite boundaries and region separators remain explicit; behavior labels are never evaluated.
StatementKind::equal
fn StatementKind::equal(StatementKind, StatementKind) -> BoolStatementKind::not_equal
fn StatementKind::not_equal(x : StatementKind, y : StatementKind) -> BoolStatementKind::to_repr
fn StatementKind::to_repr(StatementKind) -> @moonbitlang/core/debug.Repr