moonrockz/diagrams/ebnf does not have a README file
pub struct Grammar { id : String items : ReadOnlyArray[Item] nodes : ReadOnlyArray[Node] title : String? accessibility_title : String? accessibility_description : String?} derive(Eq, @moonbitlang/core/debug.DebugDebug)
fn Grammar::equal(Grammar, Grammar) -> Bool
fn Grammar::new(id : String, items : ArrayView[Item], nodes : ArrayView[Node], title? : String, accessibility_title? : String, accessibility_description? : String) -> Grammar
fn Grammar::not_equal(x : Grammar, y : Grammar) -> Bool
fn Grammar::rules(self : Grammar) -> Array[Rule]
fn Grammar::to_repr(Grammar) -> @moonbitlang/core/debug.ReprRepr
pub struct Index { grammar : Grammar order : ReadOnlyArray[String] // private fields}
fn Index::build(grammar : Grammar, limits? : Limits) -> IndexResult
fn Index::depth(self : Index, id : String) -> Int?
fn Index::node(self : Index, id : String) -> Node?
fn Index::owner(self : Index, id : String) -> String?
fn Index::parent(self : Index, id : String) -> String?
fn Index::resolution(self : Index, id : String) -> Resolution?
fn Index::rule(self : Index, id : String) -> Rule?
pub struct IndexResult { index : Index? diagnostics : ReadOnlyArray[@moonrockz/diagrams.DiagnosticDiagnostic]}
pub(all) enum Item { Rule(Rule) Note(String, String)} derive(Eq, @moonbitlang/core/debug.DebugDebug)
fn Item::equal(Item, Item) -> Bool
fn Item::not_equal(x : Item, y : Item) -> Bool
fn Item::to_repr(Item) -> @moonbitlang/core/debug.ReprRepr
pub(all) enum Kind { Terminal(String, Quote) Reference(String, String?) Special(String) Empty Sequence(ReadOnlyArray[String]) Choice(ReadOnlyArray[String]) Optional(String) ZeroOrMore(String) OneOrMore(String) Count(String, String) Exclusion(String, String)} derive(Eq, @moonbitlang/core/debug.DebugDebug)
fn Kind::equal(Kind, Kind) -> Bool
fn Kind::not_equal(x : Kind, y : Kind) -> Bool
fn Kind::to_repr(Kind) -> @moonbitlang/core/debug.ReprRepr
pub struct Limits { nodes : Int depth : Int work : Int} derive(Eq, @moonbitlang/core/debug.DebugDebug)
fn Limits::equal(Limits, Limits) -> Bool
fn Limits::new(nodes? : Int, depth? : Int, work? : Int) -> Limits
fn Limits::not_equal(x : Limits, y : Limits) -> Bool
fn Limits::to_repr(Limits) -> @moonbitlang/core/debug.ReprRepr
pub struct Node { id : String kind : Kind notes_above : ReadOnlyArray[String] notes_below : ReadOnlyArray[String] source : @moonrockz/diagrams.SpanSpan?} derive(Eq, @moonbitlang/core/debug.DebugDebug)
fn Node::children(self : Node) -> ReadOnlyArray[String]
fn Node::equal(Node, Node) -> Bool
fn Node::is_leaf(self : Node) -> Bool
fn Node::label(self : Node) -> String
fn Node::new(id : String, kind : Kind, notes_above? : ArrayView[String], notes_below? : ArrayView[String], source? : @moonrockz/diagrams.SpanSpan) -> Node
fn Node::not_equal(x : Node, y : Node) -> Bool
fn Node::to_repr(Node) -> @moonbitlang/core/debug.ReprRepr
pub(all) enum Quote { Double Single} derive(Eq, @moonbitlang/core/debug.DebugDebug)
fn Quote::equal(Quote, Quote) -> Bool
fn Quote::not_equal(x : Quote, y : Quote) -> Bool
fn Quote::to_repr(Quote) -> @moonbitlang/core/debug.ReprRepr
pub(all) enum Resolution { Resolved(String) Unresolved Ambiguous(ReadOnlyArray[String])} derive(Eq, @moonbitlang/core/debug.DebugDebug)
fn Resolution::equal(Resolution, Resolution) -> Bool
fn Resolution::not_equal(x : Resolution, y : Resolution) -> Bool
fn Resolution::to_repr(Resolution) -> @moonbitlang/core/debug.ReprRepr
pub struct Rule { id : String name : String body : String? note_above : String? note_below : String? source : @moonrockz/diagrams.SpanSpan?} derive(Eq, @moonbitlang/core/debug.DebugDebug)
fn Rule::equal(Rule, Rule) -> Bool
fn Rule::new(id : String, name : String, body? : String, note_above? : String, note_below? : String, source? : @moonrockz/diagrams.SpanSpan) -> Rule
fn Rule::not_equal(x : Rule, y : Rule) -> Bool
fn Rule::to_repr(Rule) -> @moonbitlang/core/debug.ReprRepr
let diagnostic_codes : ReadOnlyArray[String]
fn validate(grammar : Grammar, limits? : Limits) -> ReadOnlyArray[@moonrockz/diagrams.DiagnosticDiagnostic]
Install
Diagramming for MoonBit: Mermaid, PlantUML, Draw.io, Graphviz DOT and more
No dependencies
Published modules that use this version
Powered by MoonBit
© 2026 mooncakes.io