Package org.apache.calcite.plan
Interface RelRule.Config
- All Known Subinterfaces:
AbstractConverter.ExpandConversionRule.Config,AbstractJoinExtractFilterRule.Config,AggregateCaseToFilterRule.Config,AggregateExpandDistinctAggregatesRule.Config,AggregateExpandWithinDistinctRule.Config,AggregateExtractProjectRule.Config,AggregateFilterToCaseRule.Config,AggregateFilterTransposeRule.Config,AggregateGroupingSetsToUnionRule.Config,AggregateJoinJoinRemoveRule.Config,AggregateJoinRemoveRule.Config,AggregateJoinTransposeRule.Config,AggregateMergeRule.Config,AggregateMinMaxToLimitRule.Config,AggregateProjectConstantToDummyJoinRule.Config,AggregateProjectMergeRule.Config,AggregateProjectPullUpConstantsRule.Config,AggregateProjectStarTableRule.Config,AggregateReduceFunctionsRule.Config,AggregateRemoveRule.Config,AggregateStarTableRule.Config,AggregateUnionAggregateRule.Config,AggregateUnionTransposeRule.Config,AggregateValuesRule.Config,ArrowRules.ArrowFilterRule.Config,Bindables.BindableTableScanRule.Config,CalcMergeRule.Config,CalcRemoveRule.Config,CalcSplitRule.Config,CassandraRules.CassandraFilterRule.CassandraFilterRuleConfig,CassandraRules.CassandraFilterRule.Config,CassandraRules.CassandraLimitRule.CassandraLimitRuleConfig,CassandraRules.CassandraLimitRule.Config,CassandraRules.CassandraSortRule.CassandraSortRuleConfig,CassandraRules.CassandraSortRule.Config,CoerceInputsRule.Config,CommonRelSubExprRegisterRule.Config,CommonRelSubExprRule.Config,ConverterRule.Config,CsvProjectTableScanRule.Config,CsvProjectTableScanRule.Config,DateRangeRules.FilterDateRangeRule.FilterDateRangeRuleConfig,DphypJoinReorderRule.Config,DruidRules.DruidAggregateProjectRule.DruidAggregateProjectRuleConfig,DruidRules.DruidAggregateRule.DruidAggregateRuleConfig,DruidRules.DruidFilterRule.DruidFilterRuleConfig,DruidRules.DruidHavingFilterRule.DruidHavingFilterRuleConfig,DruidRules.DruidPostAggregationProjectRule.DruidPostAggregationProjectRuleConfig,DruidRules.DruidProjectRule.DruidProjectRuleConfig,DruidRules.DruidSortRule.DruidSortRuleConfig,EnumerableBatchNestedLoopJoinRule.Config,EnumerableFilterToCalcRule.Config,EnumerableLimitRule.Config,EnumerableLimitSortRule.Config,EnumerableMergeUnionRule.Config,EnumerableProjectToCalcRule.Config,ExchangeRemoveConstantKeysRule.Config,ExpandDisjunctionForJoinInputsRule.Config,ExpandDisjunctionForTableRule.Config,FilterAggregateTransposeRule.Config,FilterCalcMergeRule.Config,FilterCorrelateRule.Config,FilterFlattenCorrelatedConditionRule.Config,FilterJoinRule.Config,FilterJoinRule.FilterIntoJoinRule.FilterIntoJoinRuleConfig,FilterJoinRule.JoinConditionPushRule.JoinConditionPushRuleConfig,FilterMergeRule.Config,FilterMultiJoinMergeRule.Config,FilterProjectTransposeRule.Config,FilterRemoveIsNotDistinctFromRule.Config,FilterSampleTransposeRule.Config,FilterSetOpTransposeRule.Config,FilterSortTransposeRule.Config,FilterTableFunctionTransposeRule.Config,FilterTableScanRule.Config,FilterToCalcRule.Config,FilterWindowTransposeRule.Config,FullToLeftAndRightJoinRule.Config,GeodeRules.GeodeFilterRule.GeodeFilterRuleConfig,GeodeRules.GeodeSortLimitRule.GeodeSortLimitRuleConfig,InnodbRules.InnodbFilterRule.InnodbFilterRuleConfig,InnodbRules.InnodbSortFilterRule.InnodbSortFilterRuleConfig,InnodbRules.InnodbSortTableScanRule.InnodbSortTableScanRuleConfig,IntersectReorderRule.Config,IntersectToDistinctRule.Config,IntersectToExistsRule.Config,IntersectToSemiJoinRule.Config,JoinAddRedundantSemiJoinRule.Config,JoinAssociateRule.Config,JoinCommuteRule.Config,JoinConditionExpandIsNotDistinctFromRule.Config,JoinDeriveIsNotNullFilterRule.Config,JoinExpandOrToUnionRule.Config,JoinExtractFilterRule.Config,JoinProjectTransposeRule.Config,JoinPushExpressionsRule.Config,JoinPushThroughJoinRule.Config,JoinPushTransitivePredicatesRule.Config,JoinToCorrelateRule.Config,JoinToHyperGraphRule.Config,JoinToMultiJoinRule.Config,JoinUnionTransposeRule.Config,LoptOptimizeJoinRule.Config,MatchRule.Config,MaterializedViewAggregateRule.Config,MaterializedViewFilterScanRule.Config,MaterializedViewOnlyAggregateRule.Config,MaterializedViewOnlyFilterRule.Config,MaterializedViewOnlyJoinRule.Config,MaterializedViewProjectAggregateRule.Config,MaterializedViewProjectFilterRule.Config,MaterializedViewProjectJoinRule.Config,MaterializedViewRule.Config,MeasureRules.AggregateMeasure2RuleConfig,MeasureRules.AggregateMeasureRuleConfig,MeasureRules.FilterSortMeasureRuleConfig,MeasureRules.ProjectMeasureRuleConfig,MeasureRules.ProjectSortMeasureRuleConfig,MinusToAntiJoinRule.Config,MinusToDistinctRule.Config,MinusToFilterRule.Config,MultiJoinOptimizeBushyRule.Config,MultiJoinProjectTransposeRule.Config,PigToSqlAggregateRule.Config,ProjectAggregateMergeRule.Config,ProjectCalcMergeRule.Config,ProjectCorrelateTransposeRule.Config,ProjectFilterTransposeRule.Config,ProjectJoinJoinRemoveRule.Config,ProjectJoinRemoveRule.Config,ProjectJoinTransposeRule.Config,ProjectMergeRule.Config,ProjectMultiJoinMergeRule.Config,ProjectOverSumToSum0Rule.Config,ProjectRemoveRule.Config,ProjectSetOpTransposeRule.Config,ProjectTableScanRule.Config,ProjectToCalcRule.Config,ProjectToWindowRule.CalcToWindowRule.CalcToWindowRuleConfig,ProjectToWindowRule.Config,ProjectToWindowRule.ProjectToLogicalProjectAndWindowRule.ProjectToLogicalProjectAndWindowRuleConfig,ProjectWindowTransposeRule.Config,PruneEmptyRules.CorrelateLeftEmptyRuleConfig,PruneEmptyRules.CorrelateRightEmptyRuleConfig,PruneEmptyRules.IntersectEmptyPruneRuleConfig,PruneEmptyRules.JoinLeftEmptyRuleConfig,PruneEmptyRules.JoinRightEmptyRuleConfig,PruneEmptyRules.MinusEmptyPruneRuleConfig,PruneEmptyRules.PruneEmptyRule.Config,PruneEmptyRules.RemoveEmptySingleRule.RemoveEmptySingleRuleConfig,PruneEmptyRules.SortFetchZeroRuleConfig,PruneEmptyRules.UnionEmptyPruneRuleConfig,PruneEmptyRules.ZeroMaxRowsRuleConfig,ReduceDecimalsRule.Config,ReduceExpressionsRule.CalcReduceExpressionsRule.CalcReduceExpressionsRuleConfig,ReduceExpressionsRule.Config,ReduceExpressionsRule.FilterReduceExpressionsRule.FilterReduceExpressionsRuleConfig,ReduceExpressionsRule.JoinReduceExpressionsRule.JoinReduceExpressionsRuleConfig,ReduceExpressionsRule.ProjectReduceExpressionsRule.ProjectReduceExpressionsRuleConfig,ReduceExpressionsRule.WindowReduceExpressionsRule.WindowReduceExpressionsRuleConfig,RelDecorrelator.AdjustProjectForCountAggregateRule.AdjustProjectForCountAggregateRuleConfig,RelDecorrelator.RemoveCorrelationForScalarAggregateRule.RemoveCorrelationForScalarAggregateRuleConfig,RelDecorrelator.RemoveCorrelationForScalarProjectRule.RemoveCorrelationForScalarProjectRuleConfig,RelDecorrelator.RemoveSingleAggregateRule.RemoveSingleAggregateRuleConfig,SampleToFilterRule.Config,SemiJoinFilterTransposeRule.Config,SemiJoinJoinTransposeRule.Config,SemiJoinProjectTransposeRule.Config,SemiJoinRemoveRule.Config,SemiJoinRule.Config,SemiJoinRule.JoinOnUniqueToSemiJoinRule.JoinOnUniqueToSemiJoinRuleConfig,SemiJoinRule.JoinToSemiJoinRule.JoinToSemiJoinRuleConfig,SemiJoinRule.ProjectToSemiJoinRule.ProjectToSemiJoinRuleConfig,SetOpToFilterRule.Config,SingleValuesOptimizationRules.PruneSingleValueRule.Config,SortJoinCopyRule.Config,SortJoinTransposeRule.Config,SortMergeRule.Config,SortProjectTransposeRule.Config,SortRemoveConstantKeysRule.Config,SortRemoveDuplicateKeysRule.Config,SortRemoveRedundantRule.Config,SortRemoveRule.Config,SortUnionTransposeRule.Config,SpatialRules.FilterHilbertRule.Config,SplunkPushDownRule.Config,StreamRules.DeltaAggregateTransposeRule.DeltaAggregateTransposeRuleConfig,StreamRules.DeltaFilterTransposeRule.DeltaFilterTransposeRuleConfig,StreamRules.DeltaJoinTransposeRule.DeltaJoinTransposeRuleConfig,StreamRules.DeltaProjectTransposeRule.DeltaProjectTransposeRuleConfig,StreamRules.DeltaSortTransposeRule.DeltaSortTransposeRuleConfig,StreamRules.DeltaTableScanRule.DeltaTableScanRuleConfig,StreamRules.DeltaTableScanToEmptyRule.DeltaTableScanToEmptyRuleConfig,StreamRules.DeltaUnionTransposeRule.DeltaUnionTransposeRuleConfig,SubQueryRemoveRule.Config,TableScanRule.Config,TraitMatchingRule.Config,UnionEliminatorRule.Config,UnionMergeRule.Config,UnionPullUpConstantsRule.Config,UnionToDistinctRule.Config,UnionToValuesRule.Config,ValuesReduceRule.Config
- Enclosing class:
RelRule<C extends RelRule.Config>
public static interface RelRule.Config
Rule configuration.
-
Method Summary
Modifier and TypeMethodDescriptiondefault <T> TCasts this configuration to another type, usually a sub-class.@Nullable StringDescription of the rule instance.default RelRule.OperandTransformCreates the operands for the rule instance.default RelBuilderFactoryThe factory that is used to create aRelBuilderduring rule invocations.toRule()Creates a rule that uses this configuration.withDescription(@Nullable String description) Setsdescription().withOperandSupplier(RelRule.OperandTransform transform) SetsoperandSupplier().withRelBuilderFactory(RelBuilderFactory factory) SetsrelBuilderFactory().
-
Method Details
-
toRule
RelOptRule toRule()Creates a rule that uses this configuration. Sub-class must override. -
as
Casts this configuration to another type, usually a sub-class. -
relBuilderFactory
The factory that is used to create aRelBuilderduring rule invocations. -
withRelBuilderFactory
SetsrelBuilderFactory(). -
description
Description of the rule instance. -
withDescription
Setsdescription(). -
operandSupplier
Creates the operands for the rule instance. -
withOperandSupplier
SetsoperandSupplier().
-