class Rattler::Compiler::Optimizer::OptimizationSequence
An OptimizationSequence
sequences a pair of optimzations so that applying the sequence applies the first optimization, then applies the second optimzation to the result.
Public Class Methods
new(init, last)
click to toggle source
Calls superclass method
Rattler::Compiler::Optimizer::Optimization::new
# File lib/rattler/compiler/optimizer/optimization_sequence.rb, line 11 def initialize(init, last) super() @init = init @last = last end
Protected Instance Methods
_applies_to?(parser, context)
click to toggle source
# File lib/rattler/compiler/optimizer/optimization_sequence.rb, line 19 def _applies_to?(parser, context) @last.applies_to? parser, context or @init.applies_to? parser, context end
_apply(parser, context)
click to toggle source
# File lib/rattler/compiler/optimizer/optimization_sequence.rb, line 24 def _apply(parser, context) @last.apply(@init.apply(parser, context), context) end