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.

Source

Diagram::equal

fn Diagram::equal(Diagram, Diagram) -> Bool

Source

Diagram::kind_name

fn Diagram::kind_name(self : Diagram) -> String

The name of the kind of diagram, for example sequence.

Source

Diagram::not_equal

fn Diagram::not_equal(x : Diagram, y : Diagram) -> Bool

Source

Diagram::to_repr

fn Diagram::to_repr(Diagram) -> @moonbitlang/core/debug.Repr

Source

Rendered

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.

Source

Rendered::equal

fn Rendered::equal(Rendered, Rendered) -> Bool

Source

Rendered::failed

fn Rendered::failed(media_type : String, diagnostics : ArrayView[@moonrockz/diagrams.Diagnostic]) -> Rendered

A result with no output, for a diagram that could not be rendered. diagnostics says why.

Source

Rendered::not_equal

fn Rendered::not_equal(x : Rendered, y : Rendered) -> Bool

Source

Rendered::ok

fn Rendered::ok(output : String, media_type : String, diagnostics? : ArrayView[@moonrockz/diagrams.Diagnostic]) -> Rendered

A result with output.

Source

Rendered::to_repr

fn Rendered::to_repr(Rendered) -> @moonbitlang/core/debug.Repr

Source

Rendered::unsupported

fn Rendered::unsupported(media_type : String, diagram : Diagram) -> Rendered

The result of a renderer that does not support the kind of diagram.

Source

Traits

Renderer

pub(open) trait Renderer {
  fn render(Self, Diagram) -> Rendered
}

Turns a diagram into output text, such as SVG.

Source