Class OptimizerPlan.Join
- java.lang.Object
-
- org.apache.derby.iapi.sql.compile.OptimizerPlan
-
- org.apache.derby.iapi.sql.compile.OptimizerPlan.Join
-
- Enclosing class:
- OptimizerPlan
public static final class OptimizerPlan.Join extends OptimizerPlan
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.derby.iapi.sql.compile.OptimizerPlan
OptimizerPlan.ConglomerateRS, OptimizerPlan.DeadEnd, OptimizerPlan.Join, OptimizerPlan.RowSource<D extends UniqueTupleDescriptor>, OptimizerPlan.TableFunctionRS
-
-
Field Summary
Fields Modifier and Type Field Description private boolean
_isBound
private int
_leafNodeCount
(package private) OptimizerPlan
leftChild
(package private) OptimizerPlan
rightChild
(package private) JoinStrategy
strategy
-
Constructor Summary
Constructors Constructor Description Join(JoinStrategy strategy, OptimizerPlan leftChild, OptimizerPlan rightChild)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
bind(DataDictionary dataDictionary, LanguageConnectionContext lcc, CompilerContext cc)
Bind the conglomerate and table function names in this plan.int
countLeafNodes()
Count the number of leaf nodes under (and including) this node.boolean
equals(java.lang.Object other)
boolean
isBound()
Return true if this the schema and RowSource names have been resolved.boolean
isLeftPrefixOf(OptimizerPlan other)
Return true if this plan is a (left) leading prefix of the other plan.OptimizerPlan
leftmostLeaf()
Get the leftmost leaf node in this plan.java.lang.String
toString()
-
Methods inherited from class org.apache.derby.iapi.sql.compile.OptimizerPlan
makeRowSource
-
-
-
-
Field Detail
-
strategy
final JoinStrategy strategy
-
leftChild
final OptimizerPlan leftChild
-
rightChild
final OptimizerPlan rightChild
-
_isBound
private boolean _isBound
-
_leafNodeCount
private int _leafNodeCount
-
-
Constructor Detail
-
Join
public Join(JoinStrategy strategy, OptimizerPlan leftChild, OptimizerPlan rightChild)
-
-
Method Detail
-
bind
public void bind(DataDictionary dataDictionary, LanguageConnectionContext lcc, CompilerContext cc) throws StandardException
Description copied from class:OptimizerPlan
Bind the conglomerate and table function names in this plan.
- Specified by:
bind
in classOptimizerPlan
- Parameters:
dataDictionary
- DataDictionary to bind against.- Throws:
StandardException
-
isBound
public boolean isBound()
Description copied from class:OptimizerPlan
Return true if this the schema and RowSource names have been resolved.
- Specified by:
isBound
in classOptimizerPlan
-
countLeafNodes
public int countLeafNodes()
Description copied from class:OptimizerPlan
Count the number of leaf nodes under (and including) this node.
- Specified by:
countLeafNodes
in classOptimizerPlan
-
leftmostLeaf
public OptimizerPlan leftmostLeaf()
Description copied from class:OptimizerPlan
Get the leftmost leaf node in this plan.
- Specified by:
leftmostLeaf
in classOptimizerPlan
-
isLeftPrefixOf
public boolean isLeftPrefixOf(OptimizerPlan other)
Description copied from class:OptimizerPlan
Return true if this plan is a (left) leading prefix of the other plan.
- Specified by:
isLeftPrefixOf
in classOptimizerPlan
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object other)
- Overrides:
equals
in classjava.lang.Object
-
-