Module: Veritas::Optimizer::Function::Binary

Included in:
Connective::Binary, Numeric::ConstantOperands, Numeric::UnoptimizedOperands, Predicate, Relation::Operation::Binary
Defined in:
lib/veritas/optimizer/function/binary.rb

Overview

Mixin for optimizations to Binary functions

Defined Under Namespace

Modules: ConstantOperands, UnoptimizedOperands

Instance Attribute Summary (collapse)

Instance Method Summary (collapse)

Instance Attribute Details

- (Object) left (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The optimized left operand



15
16
17
# File 'lib/veritas/optimizer/function/binary.rb', line 15

def left
  @left
end

- (Object) right (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The optimized right operand



22
23
24
# File 'lib/veritas/optimizer/function/binary.rb', line 22

def right
  @right
end

Instance Method Details

- (undefined) initialize

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Initialize an Predicate optimizer



29
30
31
32
33
# File 'lib/veritas/optimizer/function/binary.rb', line 29

def initialize(*)
  super
  @left  = optimize_left
  @right = optimize_right
end