public class ExtendedAggregateExtractProjectRule
extends org.apache.calcite.rel.rules.AggregateExtractProjectRule
Project from a LogicalAggregate, a
LogicalWindowAggregate or a TableAggregate and push it down towards the input.
Note: Most of the logic in this rule is same with AggregateExtractProjectRule. The
difference is this rule has also taken the LogicalWindowAggregate and TableAggregate into consideration. Furthermore, this rule also creates trivial Projects
unless the input node is already a Project.
org.apache.calcite.rel.rules.AggregateExtractProjectRule.Configorg.apache.calcite.plan.RelRule.Done, org.apache.calcite.plan.RelRule.MatchHandler<R extends org.apache.calcite.plan.RelOptRule>, org.apache.calcite.plan.RelRule.OperandBuilder, org.apache.calcite.plan.RelRule.OperandDetailBuilder<R extends org.apache.calcite.rel.RelNode>, org.apache.calcite.plan.RelRule.OperandTransform| Modifier and Type | Field and Description |
|---|---|
static ExtendedAggregateExtractProjectRule |
INSTANCE |
| Constructor and Description |
|---|
ExtendedAggregateExtractProjectRule(org.apache.calcite.plan.RelOptRuleOperand operand,
org.apache.calcite.tools.RelBuilderFactory builderFactory) |
| Modifier and Type | Method and Description |
|---|---|
boolean |
matches(org.apache.calcite.plan.RelOptRuleCall call) |
void |
onMatch(org.apache.calcite.plan.RelOptRuleCall call) |
any, convert, convert, convertList, convertOperand, convertOperand, equals, equals, getOperand, getOperands, getOutConvention, getOutTrait, hashCode, none, operand, operand, operand, operand, operand, operandJ, operandJ, some, toString, unorderedpublic static final ExtendedAggregateExtractProjectRule INSTANCE
public ExtendedAggregateExtractProjectRule(org.apache.calcite.plan.RelOptRuleOperand operand,
org.apache.calcite.tools.RelBuilderFactory builderFactory)
public boolean matches(org.apache.calcite.plan.RelOptRuleCall call)
matches in class org.apache.calcite.plan.RelOptRulepublic void onMatch(org.apache.calcite.plan.RelOptRuleCall call)
onMatch in class org.apache.calcite.rel.rules.AggregateExtractProjectRuleCopyright © 2014–2021 The Apache Software Foundation. All rights reserved.