def apply(parser, context)
      applies_to?(parser, context) ? _apply(parser, context) : parser
    end
def apply(parser, context)
      applies_to?(parser, context) ? _apply(parser, context) : parser
    end
Apply the optimzation to +parser+ in +context+ if
 <tt>#applies_to?(parser, context)</tt> is +true+.

 @param [Rattler::Parsers::Parser] parser the parser to be optimized
 @param [Rattler::Compiler::Optimizer::OptimizationContext] context

 @return [Rattler::Parsers::Parser] the optimized parser