Sign in

    moonrockz/diagrams-plantuml/regex does not have a README file

    Conversion

    pub struct Conversion {
    regex :
    Regex
    ?
    diagnostics : ReadOnlyArray[
    Diagnostic
    ]
    }

    Document

    pub struct Document {
    name : String?
    statements : ReadOnlyArray[
    Statement
    ]
    pattern : Expr
    text : String
    span :
    Span
    ?
    } derive(Eq,
    Debug
    )

    One parsed regex block.

    Document::equal

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

    Document::logical_equal

    fn Document::logical_equal(self : Document, other : Document) -> Bool

    True when two documents have equal logical content. Source locations, source spelling and trivia are not compared.

    Document::new

    fn Document::new(pattern : Expr, name? : String, statements? : ArrayView[
    Statement
    ], text? : String) -> Document

    Document::not_equal

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

    Document::to_repr

    Document::without_spans

    fn Document::without_spans(self : Document) -> Document

    The document without source locations and source spelling.

    Expr

    One typed regex expression. Composite nodes are flat: a concatenation never holds another concatenation directly, and an alternation never holds another alternation directly.

    Expr::equal

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

    Expr::not_equal

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

    Expr::to_repr

    Expr::without_spans

    fn Expr::without_spans(self : Expr) -> Expr

    The expression without source locations, for logical comparison.

    ReadResult

    pub struct ReadResult {
    nodes : Array[
    Node
    ]
    document : Document?
    diagnostics : ReadOnlyArray[
    Diagnostic
    ]
    }

    diagnostic_codes

    let diagnostic_codes : ReadOnlyArray[String]

    The stable diagnostic codes of the regex reader and writer.
    fn print_body(document : Document, limits? :
    Limits
    ) -> Result[String, ReadOnlyArray[
    Diagnostic
    ]]

    The canonical body of a regex document: one pattern line with a line break.
    fn print_pattern(expr : Expr, limits? :
    Limits
    ) -> Result[String, ReadOnlyArray[
    Diagnostic
    ]]

    Write a pattern from typed values. An expression that the reader cannot read back to the same value gives a diagnostic instead of text.

    read

    Read the body of a scanned regex block. The block has exactly one pattern line; further pattern lines are an error.

    to_regex

    fn to_regex(document : Document, id? : String, limits? :
    Limits
    ) -> Conversion

    Convert a regex document to the format-independent model. Adjacent characters of a concatenation become one literal term, as PlantUML draws them. Node identities are ordered ownership paths, never labels.

    Powered by MoonBit

    Site sourceReport issuePackagesBuild queueSkillsStatistics

    © 2026 mooncakes.io