org.eigenbase.relopt.volcano
Class VolcanoPlanner.DeferringRuleCall

java.lang.Object
  extended by org.eigenbase.relopt.RelOptRuleCall
      extended by org.eigenbase.relopt.volcano.VolcanoRuleCall
          extended by org.eigenbase.relopt.volcano.VolcanoPlanner.DeferringRuleCall
Enclosing class:
VolcanoPlanner

private static class VolcanoPlanner.DeferringRuleCall
extends VolcanoRuleCall

A rule call which defers its actions. Whereas RelOptRuleCall invokes the rule when it finds a match, a DeferringRuleCall creates a VolcanoRuleMatch which can be invoked later.


Field Summary
 
Fields inherited from class org.eigenbase.relopt.volcano.VolcanoRuleCall
volcanoPlanner
 
Fields inherited from class org.eigenbase.relopt.RelOptRuleCall
rels, tracer
 
Constructor Summary
VolcanoPlanner.DeferringRuleCall(VolcanoPlanner planner, RelOptRuleOperand operand)
           
 
Method Summary
protected  void onMatch()
          Rather than invoking the rule (as the base method does), creates a VolcanoRuleMatch which can be invoked later.
 
Methods inherited from class org.eigenbase.relopt.volcano.VolcanoRuleCall
match, transformTo
 
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
 

Constructor Detail

VolcanoPlanner.DeferringRuleCall

VolcanoPlanner.DeferringRuleCall(VolcanoPlanner planner,
                                 RelOptRuleOperand operand)
Method Detail

onMatch

protected void onMatch()
Rather than invoking the rule (as the base method does), creates a VolcanoRuleMatch which can be invoked later.

Overrides:
onMatch in class VolcanoRuleCall