Class: Veritas::Optimizer::Algebra::Extension::UnoptimizedOperand

Inherits:
Veritas::Optimizer::Algebra::Extension show all
Includes:
Function::Unary::UnoptimizedOperand
Defined in:
lib/veritas/optimizer/algebra/extension.rb

Overview

Optimize when operands are optimizable

Constant Summary

Constants inherited from Veritas::Optimizer

Noop, VERSION

Instance Attribute Summary

Attributes inherited from Veritas::Optimizer::Algebra::Extension

#extensions

Attributes inherited from Relation::Operation::Unary

#header

Attributes included from Function::Unary

#operand

Attributes inherited from Veritas::Optimizer

#operation

Instance Method Summary collapse

Methods inherited from Veritas::Optimizer::Algebra::Extension

#initialize

Methods inherited from Relation::Operation::Unary

#initialize

Methods included from Function::Unary

#initialize

Methods inherited from Veritas::Optimizer

chain, #initialize

Constructor Details

This class inherits a constructor from Veritas::Optimizer::Algebra::Extension

Instance Method Details

#optimizable?Boolean

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.

Test if the operand is unoptimized



65
66
67
# File 'lib/veritas/optimizer/algebra/extension.rb', line 65

def optimizable?
  super || extensions_optimizable?
end

#optimizeAlgebra::Extension

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.

Return an Extension with an optimized operand



74
75
76
# File 'lib/veritas/optimizer/algebra/extension.rb', line 74

def optimize
  wrap_operand(operand)
end