[][src]Module macro_railroad::lowering

Intermediate representation of a MacroRules and it's transformations.

The representation in this module is more coarse than what the parser provides, yet has still more information than a diagram-node.

Structs

InternalMacroRemover

Replaces macro-variants which start with certain literals with a macro-internal-comment.

MacroRules

A more coarse representation of parser::MacroRules.

NonTerminalCollector

Walks a Matcher-tree and collects all NonTerminals as their Name/Fragment-combinations

Normalizer

Simplifies a Matcher-tree

SearchVisitor

Tests if any Matcher matches a given predicate.

Ungrouper

Unpacks all Groups in a Matcher

Enums

Matcher

A more coarse superset of parser::Matcher.

Traits

InspectVisitor

A Visitor to walk Matcher.

TransformVisitor

A Visitor to walk Matcher and mutate it.