moonrockz/diagrams/render
Types
Diagram
pub(all) enum Diagram {
Sequence(@moonrockz/diagrams/sequence.Sequence)
Bpmn(@moonrockz/diagrams/bpmn.Bpmn)
Swimlane(@moonrockz/diagrams/swimlane.Swimlane)
State(@moonrockz/diagrams/state.StateDiagram)
Flowchart(@moonrockz/diagrams/flowchart.Flowchart)
Architecture(@moonrockz/diagrams/architecture.Architecture)
Regex(@moonrockz/diagrams/regex.Regex)
Ebnf(@moonrockz/diagrams/ebnf.Grammar)
DataTree(@moonrockz/diagrams/data-tree.DataTree)
} derive(Eq, @moonbitlang/core/debug.Debug)A diagram of one kind. Each kind has its own format-independent model.
Diagram::equal
fn Diagram::equal(Diagram, Diagram) -> BoolDiagram::kind_name
fn Diagram::kind_name(self : Diagram) -> StringThe name of the kind of diagram, for example sequence.
Diagram::not_equal
fn Diagram::not_equal(x : Diagram, y : Diagram) -> BoolDiagram::to_repr
fn Diagram::to_repr(Diagram) -> @moonbitlang/core/debug.ReprRendered
pub struct Rendered {
output : String?
media_type : String
diagnostics : ReadOnlyArray[@moonrockz/diagrams.Diagnostic]
} derive(Eq, @moonbitlang/core/debug.Debug)The result of a renderer. output is absent when the renderer cannot
render the diagram; diagnostics then has an error.
Rendered::equal
fn Rendered::equal(Rendered, Rendered) -> BoolRendered::failed
fn Rendered::failed(media_type : String, diagnostics : ArrayView[@moonrockz/diagrams.Diagnostic]) -> RenderedA result with no output, for a diagram that could not be rendered.
diagnostics says why.
Rendered::not_equal
fn Rendered::not_equal(x : Rendered, y : Rendered) -> BoolRendered::ok
fn Rendered::ok(output : String, media_type : String, diagnostics? : ArrayView[@moonrockz/diagrams.Diagnostic]) -> RenderedA result with output.
Rendered::to_repr
fn Rendered::to_repr(Rendered) -> @moonbitlang/core/debug.ReprRendered::unsupported
fn Rendered::unsupported(media_type : String, diagram : Diagram) -> RenderedThe result of a renderer that does not support the kind of diagram.
Traits
Renderer
pub(open) trait Renderer {
fn render(Self, Diagram) -> Rendered
}Turns a diagram into output text, such as SVG.