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.
| 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–2020 The Apache Software Foundation. All rights reserved.