public class ProjectFilterTransposeRule extends RelOptRule
Modifier and Type | Field and Description |
---|---|
static ProjectFilterTransposeRule |
INSTANCE |
private PushProjector.ExprCondition |
preserveExprCondition
Expressions that should be preserved in the projection
|
description, operands, relBuilderFactory
Modifier | Constructor and Description |
---|---|
|
ProjectFilterTransposeRule(java.lang.Class<? extends Project> projectClass,
java.lang.Class<? extends Filter> filterClass,
RelBuilderFactory relBuilderFactory,
PushProjector.ExprCondition preserveExprCondition)
Creates a ProjectFilterTransposeRule.
|
protected |
ProjectFilterTransposeRule(RelOptRuleOperand operand,
PushProjector.ExprCondition preserveExprCondition,
RelBuilderFactory relBuilderFactory) |
Modifier and Type | Method and Description |
---|---|
void |
onMatch(RelOptRuleCall call)
Receives notification about a rule match.
|
any, convert, convert, convertList, convertOperand, convertOperand, equals, equals, getOperand, getOperands, getOutConvention, getOutTrait, hashCode, matches, none, operand, operand, operand, operand, operand, operandJ, operandJ, some, toString, unordered
public static final ProjectFilterTransposeRule INSTANCE
private final PushProjector.ExprCondition preserveExprCondition
public ProjectFilterTransposeRule(java.lang.Class<? extends Project> projectClass, java.lang.Class<? extends Filter> filterClass, RelBuilderFactory relBuilderFactory, PushProjector.ExprCondition preserveExprCondition)
preserveExprCondition
- Condition for expressions that should be
preserved in the projectionprotected ProjectFilterTransposeRule(RelOptRuleOperand operand, PushProjector.ExprCondition preserveExprCondition, RelBuilderFactory relBuilderFactory)
public void onMatch(RelOptRuleCall call)
RelOptRule
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.apache.calcite.rel.RelNode, java.util.Map<org.apache.calcite.rel.RelNode, org.apache.calcite.rel.RelNode>)
to
register the expression.
onMatch
in class RelOptRule
call
- Rule callRelOptRule.matches(RelOptRuleCall)
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.