Expand description
CRUDUI expression engine — formal lexer→parser→AST→evaluator (expressions.md
§0–§8). The single truth is the shared 4-language fixture
tests/fixtures/expr/cases.json; this engine matches it byte-for-byte
(tokens, AST without position, evaluated value, and truthy).
No eval / no regex-split anywhere (GRAMMAR §10) — a strictly staged pipeline.
Re-exports§
pub use ast::LiteralValue;pub use ast::Node;pub use ast::PathSegment;pub use error::ParseError;pub use evaluator::is_truthy;pub use evaluator::Evaluator;pub use expression::Expression;pub use lexer::Lexer;pub use parser::Parser;pub use token::Literal;pub use token::Token;pub use token::TokenType;
Modules§
- ast
- CRUDUI expression AST nodes (expressions.md §4, JS
ConditionParser.tsparity). - condition_
map - Condition-map resolver (expressions.md §8). A thin wrapper over the expression engine — NOT a separate parser.
- error
- Parse error for the CRUDUI expression engine.
- evaluator
- CRUDUI expression evaluator (expressions.md §5/§6/§7, JS
PathResolverparity). - expression
- Public facade for the CRUDUI expression engine: string → tokens → AST → value.
- lexer
- CRUDUI expression lexer (expressions.md §1, JS/PHP
Lexerparity). - parser
- CRUDUI expression parser:
Vec<Token>→ AST (expressions.md §3/§4, JS/PHPParserparity). - token
- CRUDUI expression tokens (expressions.md §1, JS
types.tsTokenType parity).