Expand description
The Expression Constraint Language.
A logos lexer and a winnow parser faithful to the official ECL ANTLR
grammar (vendor/syntax/ECL.g4, the pinned tag in docs/VERSIONS.md;
https://docs.snomed.org/snomed-ct-specifications/snomed-ct-expression-constraint-language),
a syntax tree named after the grammar’s rules, and a printer whose output
parses back to the same tree.
Modules§
- ast
- The syntax tree of an expression constraint, one type per grammar rule
that carries meaning (
ECL.g4; the rules that only spell a keyword or a character class are folded into their parents). - dialects
- The dialect aliases of the ECL specification.
- eval
- The evaluator: an expression constraint to the set of concept ordinals it selects, as set algebra over the materialized closure, the attribute graph, and the reference set tables of one edition.
- lexer
- The token layer of ECL: the grammar’s lexer rules folded into the tokens
the parser consumes (
ECL.g4, the lexer rules andws,comment,term, and the quoted forms). - parser
- The parser: one function per rule of
ECL.g4, over the token stream ofcrate::lexer, withwinnow.
Enums§
- Parse
Error - A malformed expression constraint.
Functions§
- parse
- Parses an expression constraint.