Package org.apache.calcite.rel.rules
Interface ProjectFilterTransposeRule.Config
- All Superinterfaces:
RelRule.Config
- Enclosing class:
ProjectFilterTransposeRule
Rule configuration.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ProjectFilterTransposeRule.Configstatic final ProjectFilterTransposeRule.Configstatic final ProjectFilterTransposeRule.Config -
Method Summary
Modifier and TypeMethodDescriptiondefault booleanWhether to push whole expressions from the filter; if false (the default), only pushes references.default booleanWhether to push whole expressions from the project; if false (the default), only pushes references.default RelRule.OperandTransformCreates the operands for the rule instance.default PushProjector.ExprConditionExpressions that should be preserved in the projection.default ProjectFilterTransposeRuletoRule()Creates a rule that uses this configuration.withOperandFor(Class<? extends Project> projectClass, Class<? extends Filter> filterClass) Defines an operand tree for the given classes.withOperandFor(Class<? extends Project> projectClass, Class<? extends Filter> filterClass, Class<? extends RelNode> inputClass) Defines an operand tree for the given 3 classes.SetspreserveExprCondition().withWholeFilter(boolean wholeFilter) SetsisWholeFilter().withWholeProject(boolean wholeProject) SetsisWholeProject().Methods inherited from interface org.apache.calcite.plan.RelRule.Config
as, description, relBuilderFactory, withDescription, withOperandSupplier, withRelBuilderFactory
-
Field Details
-
DEFAULT
-
PROJECT
-
PROJECT_FILTER
-
-
Method Details
-
toRule
Description copied from interface:RelRule.ConfigCreates a rule that uses this configuration. Sub-class must override.- Specified by:
toRulein interfaceRelRule.Config
-
preserveExprCondition
Expressions that should be preserved in the projection. -
withPreserveExprCondition
SetspreserveExprCondition(). -
isWholeProject
@Default default boolean isWholeProject()Whether to push whole expressions from the project; if false (the default), only pushes references. -
withWholeProject
SetsisWholeProject(). -
isWholeFilter
@Default default boolean isWholeFilter()Whether to push whole expressions from the filter; if false (the default), only pushes references. -
withWholeFilter
SetsisWholeFilter(). -
withOperandFor
default ProjectFilterTransposeRule.Config withOperandFor(Class<? extends Project> projectClass, Class<? extends Filter> filterClass) Defines an operand tree for the given classes. -
operandSupplier
Description copied from interface:RelRule.ConfigCreates the operands for the rule instance.- Specified by:
operandSupplierin interfaceRelRule.Config
-
withOperandFor
default ProjectFilterTransposeRule.Config withOperandFor(Class<? extends Project> projectClass, Class<? extends Filter> filterClass, Class<? extends RelNode> inputClass) Defines an operand tree for the given 3 classes.
-