Module grammar

Module grammar 

Source
Expand description

2026-09-26: The grammar representation and its front end: the expression and rule data (GrammarExpr, GrammarData), GrammarBuilder, the EBNF lexer and parser (parse_ebnf), the normalising and optimising passes (functor), and the EBNF printer.

Owner: grammar. Invariants: none beyond the types.

Re-exports§

pub use builder::GrammarBuilder;
pub use data::GrammarData;
pub use data::Rule;
pub use data::TagDispatch;
pub use expr::GrammarExpr;
pub use expr::GrammarExprType;
pub use functor::GrammarConcat;
pub use functor::GrammarFsmBuilder;
pub use functor::GrammarFsmHasher;
pub use functor::GrammarNormalizer;
pub use functor::GrammarOptimizer;
pub use functor::GrammarUnion;
pub use parser::ParseError;
pub use parser::parse_ebnf;
pub use parser::parse_ebnf_default;
pub use printer::GrammarPrinter;
pub use printer::print_grammar;

Modules§

builder
data
expr
functor
lexer
parser
printer