Module optimizer
Source - ByteStringFuser
- Fuse adjacent byte-string elements inside sequences.
("ab" "cd") -> ("abcd"). - DeadCodeEliminator
- Eliminate rules not reachable from the root.
- GrammarOptimizer
- Full optimization pipeline. Port of
GrammarOptimizer. - RepetitionNormalizer
- Normalize repetition ranges: if the repeated rule is nullable, the
minimum repeat count is forced to 0. Operates in place.
- RuleInliner
- Inline rule references that start a sequence, when the referenced
rule is a non-empty choices-of-sequences with no rule references.