net.sf.farrago.namespace.ftrs
Class FtrsScanToSearchRule
java.lang.Object
org.eigenbase.relopt.RelOptRule
net.sf.farrago.namespace.ftrs.FtrsScanToSearchRule
class FtrsScanToSearchRule
- extends RelOptRule
FtrsScanToSearchRule is a rule for converting FilterRel+FtrsIndexScanRel into
FtrsIndexSearchRel (when the filter has the appropriate form).
- Version:
- $Id: //open/dev/farrago/src/net/sf/farrago/namespace/ftrs/FtrsScanToSearchRule.java#35 $
- Author:
- John V. Sichi
Methods inherited from class org.eigenbase.relopt.RelOptRule |
convert, equals, equals, getOperand, getOperands, getOutTrait, hashCode, matches, mergeTraitsAndConvert, mergeTraitsAndConvert, toString |
instance
public static final FtrsScanToSearchRule instance
FtrsScanToSearchRule
private FtrsScanToSearchRule()
- Creates a FtrsScanToSearchRule.
getOutConvention
public CallingConvention getOutConvention()
- Description copied from class:
RelOptRule
- Returns the calling convention of the result of firing this rule, null if
not known.
- Overrides:
getOutConvention
in class RelOptRule
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)
testIndexColumn
static boolean testIndexColumn(FemLocalIndex index,
CwmColumn column)
considerIndex
private void considerIndex(FemLocalIndex index,
FtrsIndexScanRel origScan,
FemAbstractColumn filterColumn,
SargExpr sargExpr,
RelOptRuleCall call,
RexNode extraFilter)
transformCall
private void transformCall(RelOptRuleCall call,
RelNode searchRel,
RexNode extraFilter)