module Rattler::Compiler::Optimizer::Optimizations

Optimizations defines the sequence of optimizations to apply to optimize parsers

Public Instance Methods

optimizations() click to toggle source

@return [Optimization] the sequence of optimizations to apply to optimize

parsers
# File lib/rattler/compiler/optimizer/optimizations.rb, line 11
def optimizations
  @optimizations ||=
    InlineRegularRules >>
    OptimizeChildren >>
    SimplifyRedundantRepeat >>
    RemoveMeaninglessWrapper >>
    SimplifyTokenMatch >>
    FlattenSequence >>
    FlattenChoice >>
    ReduceRepeatMatch >>
    JoinPredicateMatch >>
    JoinPredicateOrMatch >>
    JoinMatchSequence >>
    JoinMatchChoice
end