moonrockz/diagrams-mermaid
Types
DiagramPrintResult
pub struct DiagramPrintResult {
output : String?
diagnostics : ReadOnlyArray[@moonrockz/diagrams.Diagnostic]
} derive(Eq, @moonbitlang/core/debug.Debug)DiagramPrintResult::equal
fn DiagramPrintResult::equal(DiagramPrintResult, DiagramPrintResult) -> BoolDiagramPrintResult::not_equal
fn DiagramPrintResult::not_equal(x : DiagramPrintResult, y : DiagramPrintResult) -> BoolDiagramPrintResult::to_repr
fn DiagramPrintResult::to_repr(DiagramPrintResult) -> @moonbitlang/core/debug.ReprDiagramReadResult
pub struct DiagramReadResult {
tree : DiagramTree
ast : ParsedDiagram?
diagnostics : ReadOnlyArray[@moonrockz/diagrams.Diagnostic]
} derive(Eq, @moonbitlang/core/debug.Debug)DiagramReadResult::equal
fn DiagramReadResult::equal(DiagramReadResult, DiagramReadResult) -> BoolDiagramReadResult::not_equal
fn DiagramReadResult::not_equal(x : DiagramReadResult, y : DiagramReadResult) -> BoolDiagramReadResult::to_repr
fn DiagramReadResult::to_repr(DiagramReadResult) -> @moonbitlang/core/debug.ReprDiagramTree
pub(all) enum DiagramTree {
State(@moonrockz/diagrams-mermaid/state-cst.Node)
Flowchart(@moonrockz/diagrams-mermaid/swimlane-cst.Node)
Sequence(@moonrockz/diagrams-mermaid/cst.Node)
Swimlane(@moonrockz/diagrams-mermaid/swimlane-cst.Node)
Zenuml(@moonrockz/diagrams-mermaid/zenuml-cst.Node)
Architecture(@moonrockz/diagrams-mermaid/architecture-cst.Node)
Unsupported(String)
} derive(Eq, @moonbitlang/core/debug.Debug)DiagramTree::equal
fn DiagramTree::equal(DiagramTree, DiagramTree) -> BoolDiagramTree::not_equal
fn DiagramTree::not_equal(x : DiagramTree, y : DiagramTree) -> BoolDiagramTree::text
fn DiagramTree::text(self : DiagramTree) -> StringDiagramTree::to_repr
fn DiagramTree::to_repr(DiagramTree) -> @moonbitlang/core/debug.ReprParsedDiagram
pub(all) enum ParsedDiagram {
State(@moonrockz/diagrams-mermaid/state-ast.Diagram)
Flowchart(@moonrockz/diagrams-mermaid/flowchart-ast.Diagram)
Sequence(@moonrockz/diagrams-mermaid/ast.Diagram)
Swimlane(@moonrockz/diagrams-mermaid/swimlane-ast.Diagram)
Zenuml(@moonrockz/diagrams-mermaid/zenuml-ast.Diagram)
Architecture(@moonrockz/diagrams-mermaid/architecture-ast.Diagram)
} derive(Eq, @moonbitlang/core/debug.Debug)Multi-kind entry points preserve the sequence-only API.
ParsedDiagram::equal
fn ParsedDiagram::equal(ParsedDiagram, ParsedDiagram) -> BoolParsedDiagram::not_equal
fn ParsedDiagram::not_equal(x : ParsedDiagram, y : ParsedDiagram) -> BoolParsedDiagram::to_repr
fn ParsedDiagram::to_repr(ParsedDiagram) -> @moonbitlang/core/debug.ReprReadResult
pub struct ReadResult {
tree : @moonrockz/diagrams-mermaid/cst.Node
ast : @moonrockz/diagrams-mermaid/ast.Diagram?
diagnostics : ReadOnlyArray[@moonrockz/diagrams.Diagnostic]
}The result of reading a Mermaid source: the lossless syntax tree, the
typed AST when the source has the sequenceDiagram header, and all
diagnostics.
Values
architecture_conversion_diagnostic_codes
let architecture_conversion_diagnostic_codes : ReadOnlyArray[String]architecture_diagnostic_codes
let architecture_diagnostic_codes : ReadOnlyArray[String]conversion_diagnostic_codes
let conversion_diagnostic_codes : ReadOnlyArray[String]Every diagnostic code that conversion can give. Reading uses
diagnostic_codes; link resolution uses sequence/unresolved-link.
diagnostic_codes
let diagnostic_codes : ReadOnlyArray[String]Every diagnostic code that reading can give.
flowchart_conversion_diagnostic_codes
let flowchart_conversion_diagnostic_codes : ReadOnlyArray[String]flowchart_diagnostic_codes
let flowchart_diagnostic_codes : ReadOnlyArray[String]print
fn print(diagram : @moonrockz/diagrams-mermaid/ast.Diagram) -> StringCanonical Mermaid text of diagram.
print_diagram
fn print_diagram(diagram : ParsedDiagram, limits? : @moonrockz/diagrams-mermaid/swimlane-syntax.Limits, zenuml_limits? : @moonrockz/diagrams-mermaid/zenuml-syntax.Limits, architecture_limits? : @moonrockz/diagrams-mermaid/architecture-syntax.Limits, state_limits? : @moonrockz/diagrams-mermaid/state-syntax.Limits) -> DiagramPrintResultread
fn read(source : String) -> ReadResultRead a Mermaid sequence diagram. The text of tree is always equal to
source.
read_diagram
fn read_diagram(source : String, limits? : @moonrockz/diagrams-mermaid/swimlane-syntax.Limits, zenuml_limits? : @moonrockz/diagrams-mermaid/zenuml-syntax.Limits, architecture_limits? : @moonrockz/diagrams-mermaid/architecture-syntax.Limits, state_limits? : @moonrockz/diagrams-mermaid/state-syntax.Limits) -> DiagramReadResultrender_svg
fn render_svg(source : String, renderer? : @moonrockz/diagrams-svg.SvgRenderer) -> @moonrockz/diagrams/render.RenderedRead source and render it with archify's classic theme as adaptive SVG.
The result has the diagnostics of reading, converting and rendering. A
source without a diagram gives no output.
state_conversion_diagnostic_codes
let state_conversion_diagnostic_codes : ReadOnlyArray[String]state_diagnostic_codes
let state_diagnostic_codes : ReadOnlyArray[String]swimlane_conversion_diagnostic_codes
let swimlane_conversion_diagnostic_codes : ReadOnlyArray[String]swimlane_diagnostic_codes
let swimlane_diagnostic_codes : ReadOnlyArray[String]Existing sequence-only inventories retain their original meaning.
to_architecture
fn to_architecture(diagram : @moonrockz/diagrams-mermaid/architecture-ast.Diagram, limits? : @moonrockz/diagrams-mermaid/architecture-syntax.Limits, id? : String) -> @moonrockz/diagrams-mermaid/architecture.Conversionto_flowchart
fn to_flowchart(diagram : @moonrockz/diagrams-mermaid/flowchart-ast.Diagram, limits? : @moonrockz/diagrams-mermaid/swimlane-syntax.Limits, id? : String) -> @moonrockz/diagrams-mermaid/flowchart.Conversionto_sequence
fn to_sequence(diagram : @moonrockz/diagrams-mermaid/ast.Diagram) -> @moonrockz/diagrams-mermaid/sequence.ConversionThe sequence model of diagram, with the conversion diagnostics.
to_state
fn to_state(diagram : @moonrockz/diagrams-mermaid/state-ast.Diagram, limits? : @moonrockz/diagrams-mermaid/state-syntax.Limits, id? : String) -> @moonrockz/diagrams-mermaid/state.Conversionto_swimlane
fn to_swimlane(diagram : @moonrockz/diagrams-mermaid/swimlane-ast.Diagram, limits? : @moonrockz/diagrams-mermaid/swimlane-syntax.Limits, id? : String) -> @moonrockz/diagrams-mermaid/swimlane.Conversionto_zenuml_sequence
fn to_zenuml_sequence(diagram : @moonrockz/diagrams-mermaid/zenuml-ast.Diagram, limits? : @moonrockz/diagrams-mermaid/zenuml-syntax.Limits) -> @moonrockz/diagrams-mermaid/zenuml.Conversionzenuml_conversion_diagnostic_codes
let zenuml_conversion_diagnostic_codes : ReadOnlyArray[String]zenuml_diagnostic_codes
let zenuml_diagnostic_codes : ReadOnlyArray[String]