Class: Axiom::Optimizer::Relation::Operation::Binary::SortedLeft
- Inherits:
-
Axiom::Optimizer::Relation::Operation::Binary
- Object
- Axiom::Optimizer
- Axiom::Optimizer::Relation::Operation::Binary
- Axiom::Optimizer::Relation::Operation::Binary::SortedLeft
- Defined in:
- lib/axiom/optimizer/relation/operation/binary.rb
Overview
Optimize when the left operand is an Sorted
Constant Summary
Constants inherited from Axiom::Optimizer
Instance Attribute Summary
Attributes included from Function::Binary
Attributes inherited from Axiom::Optimizer
Instance Method Summary collapse
-
#optimizable? ⇒ Boolean
private
Test if the left operand is an Sorted.
-
#optimize ⇒ Binary
private
Drop the Sorted and wrap the left operand.
Methods included from Function::Binary
Methods inherited from Axiom::Optimizer
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 left operand is an Sorted
64 65 66 |
# File 'lib/axiom/optimizer/relation/operation/binary.rb', line 64 def optimizable? left.kind_of?(Axiom::Relation::Operation::Sorted) end |
#optimize ⇒ Binary
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.
Drop the Sorted and wrap the left operand
73 74 75 |
# File 'lib/axiom/optimizer/relation/operation/binary.rb', line 73 def optimize operation.class.new(left.operand, right) end |