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

#leftObject (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

Returns:

  • (Object)


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

def left
  @left
end

#rightObject (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

Returns:

  • (Object)


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

def right
  @right
end

Instance Method Details

#initializeundefined

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

Returns:

  • (undefined)


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

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