org.eigenbase.rel.rules
Class PushSemiJoinPastFilterRule
java.lang.Object
  
org.eigenbase.relopt.RelOptRule
      
org.eigenbase.rel.rules.PushSemiJoinPastFilterRule
public class PushSemiJoinPastFilterRule
- extends RelOptRule
 
PushSemiJoinPastFilterRule implements the rule for pushing semijoins down in
 a tree past a filter in order to trigger other rules that will convert
 semijoins. SemiJoinRel(FilterRel(X), Y) --> FilterRel(SemiJoinRel(X, Y))
- Version:
 
  - $Id: //open/dev/farrago/src/org/eigenbase/rel/rules/PushSemiJoinPastFilterRule.java#8 $
 
- Author:
 
  - Zelaine Fong
 
 
 
 
 
| Methods inherited from class org.eigenbase.relopt.RelOptRule | 
convert, equals, equals, getOperand, getOperands, getOutConvention, getOutTrait, hashCode, matches, mergeTraitsAndConvert, mergeTraitsAndConvert, toString | 
 
 
instance
public static final PushSemiJoinPastFilterRule instance
PushSemiJoinPastFilterRule
private PushSemiJoinPastFilterRule()
- Creates a PushSemiJoinPastFilterRule.
 
onMatch
public void onMatch(RelOptRuleCall call)
- Description copied from class: 
RelOptRule 
- Receives notification about a rule match. At the time that this method is
 called, 
call.rels holds the set of relational
 expressions which match the operands to the rule; 
 call.rels[0] is the root expression.
 Typically a rule would check that the nodes are valid matches, creates
 a new expression, then calls back RelOptRuleCall.transformTo(org.eigenbase.rel.RelNode) to
 register the expression.
- Specified by:
 onMatch in class RelOptRule
 
- Parameters:
 call - Rule call- See Also:
 RelOptRule.matches(RelOptRuleCall)