|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.eigenbase.relopt.RelOptRuleCall org.eigenbase.relopt.volcano.VolcanoRuleCall
public class VolcanoRuleCall
VolcanoRuleCall
implements the RelOptRuleCall
interface
for VolcanoPlanner.
Field Summary | |
---|---|
private List<RelNode> |
generatedRelList
List of RelNode generated by this call. |
protected VolcanoPlanner |
volcanoPlanner
|
Fields inherited from class org.eigenbase.relopt.RelOptRuleCall |
---|
rels, tracer |
Constructor Summary | |
---|---|
(package private) |
VolcanoRuleCall(VolcanoPlanner planner,
RelOptRuleOperand operand)
Creates a rule call. |
protected |
VolcanoRuleCall(VolcanoPlanner planner,
RelOptRuleOperand operand,
RelNode[] rels)
Creates a rule call, internal, with array to hold bindings. |
Method Summary | |
---|---|
(package private) void |
match(RelNode rel)
Applies this rule, with a given relexp in the first slot. |
private void |
matchRecurse(int solve)
Recursively matches operands above a given solve order. |
protected void |
onMatch()
Called when all operands have matched. |
void |
transformTo(RelNode rel)
Called by the rule whenever it finds a match. |
Methods inherited from class org.eigenbase.relopt.RelOptRuleCall |
---|
getChildRels, getOperand0, getParents, getPlanner, getRels, getRule |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected final VolcanoPlanner volcanoPlanner
private List<RelNode> generatedRelList
RelNode
generated by this call. For debugging purposes.
Constructor Detail |
---|
protected VolcanoRuleCall(VolcanoPlanner planner, RelOptRuleOperand operand, RelNode[] rels)
planner
- Planneroperand
- First operand of the rulerels
- Array which will hold the matched relational expressionsVolcanoRuleCall(VolcanoPlanner planner, RelOptRuleOperand operand)
planner
- Planneroperand
- First operand of the ruleMethod Detail |
---|
public void transformTo(RelNode rel)
RelOptRuleCall
this.rels[0]
) has its traits propagated to the new
relational expression (rel
) and its unregistered children.
Any trait not specifically set in the RelTraitSet returned by
rel.getTraits()
will be copied from
this.rels[0].getTraitSet()
.
transformTo
in class RelOptRuleCall
protected void onMatch()
void match(RelNode rel)
private void matchRecurse(int solve)
solve
- Solver order of operand
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |