| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> |
| <!-- NewPage --> |
| <html lang="en"> |
| <head> |
| <!-- Generated by javadoc --> |
| <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> |
| <title>RelOptRule (Apache Calcite calcite API)</title> |
| <link rel="stylesheet" type="text/css" href="../../../../stylesheet.css" title="Style"> |
| <script type="text/javascript" src="../../../../script.js"></script> |
| </head> |
| <body> |
| <script type="text/javascript"><!-- |
| try { |
| if (location.href.indexOf('is-external=true') == -1) { |
| parent.document.title="RelOptRule (Apache Calcite calcite API)"; |
| } |
| } |
| catch(err) { |
| } |
| //--> |
| var methods = {"i0":9,"i1":9,"i2":9,"i3":9,"i4":9,"i5":41,"i6":10,"i7":10,"i8":10,"i9":10,"i10":10,"i11":10,"i12":10,"i13":10,"i14":9,"i15":6,"i16":9,"i17":9,"i18":41,"i19":41,"i20":9,"i21":9,"i22":9,"i23":9,"i24":10,"i25":9}; |
| var tabs = {65535:["t0","All Methods"],1:["t1","Static Methods"],2:["t2","Instance Methods"],4:["t3","Abstract Methods"],8:["t4","Concrete Methods"],32:["t6","Deprecated Methods"]}; |
| var altColor = "altColor"; |
| var rowColor = "rowColor"; |
| var tableTab = "tableTab"; |
| var activeTableTab = "activeTableTab"; |
| </script> |
| <noscript> |
| <div>JavaScript is disabled on your browser.</div> |
| </noscript> |
| <!-- ========= START OF TOP NAVBAR ======= --> |
| <div class="topNav"><a name="navbar.top"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.top.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../help-doc.html">Help</a></li> |
| </ul> |
| <div class="aboutLanguage"><b>Apache Calcite</b></div> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li><a href="../../../../org/apache/calcite/plan/RelOptQuery.html" title="class in org.apache.calcite.plan"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../../../org/apache/calcite/plan/RelOptRuleCall.html" title="class in org.apache.calcite.plan"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../index.html?org/apache/calcite/plan/RelOptRule.html" target="_top">Frames</a></li> |
| <li><a href="RelOptRule.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_top"> |
| <li><a href="../../../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_top"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li><a href="#field.detail">Field</a> | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.top"> |
| <!-- --> |
| </a></div> |
| <!-- ========= END OF TOP NAVBAR ========= --> |
| <!-- ======== START OF CLASS DATA ======== --> |
| <div class="header"> |
| <div class="subTitle">org.apache.calcite.plan</div> |
| <h2 title="Class RelOptRule" class="title">Class RelOptRule</h2> |
| </div> |
| <div class="contentContainer"> |
| <ul class="inheritance"> |
| <li><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">java.lang.Object</a></li> |
| <li> |
| <ul class="inheritance"> |
| <li>org.apache.calcite.plan.RelOptRule</li> |
| </ul> |
| </li> |
| </ul> |
| <div class="description"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <dl> |
| <dt>Direct Known Subclasses:</dt> |
| <dd><a href="../../../../org/apache/calcite/plan/volcano/AbstractConverter.ExpandConversionRule.html" title="class in org.apache.calcite.plan.volcano">AbstractConverter.ExpandConversionRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AbstractJoinExtractFilterRule.html" title="class in org.apache.calcite.rel.rules">AbstractJoinExtractFilterRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateCaseToFilterRule.html" title="class in org.apache.calcite.rel.rules">AggregateCaseToFilterRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateExpandDistinctAggregatesRule.html" title="class in org.apache.calcite.rel.rules">AggregateExpandDistinctAggregatesRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateExtractProjectRule.html" title="class in org.apache.calcite.rel.rules">AggregateExtractProjectRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateFilterTransposeRule.html" title="class in org.apache.calcite.rel.rules">AggregateFilterTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateJoinJoinRemoveRule.html" title="class in org.apache.calcite.rel.rules">AggregateJoinJoinRemoveRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateJoinRemoveRule.html" title="class in org.apache.calcite.rel.rules">AggregateJoinRemoveRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateJoinTransposeRule.html" title="class in org.apache.calcite.rel.rules">AggregateJoinTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateMergeRule.html" title="class in org.apache.calcite.rel.rules">AggregateMergeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateProjectMergeRule.html" title="class in org.apache.calcite.rel.rules">AggregateProjectMergeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateProjectPullUpConstantsRule.html" title="class in org.apache.calcite.rel.rules">AggregateProjectPullUpConstantsRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateReduceFunctionsRule.html" title="class in org.apache.calcite.rel.rules">AggregateReduceFunctionsRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateRemoveRule.html" title="class in org.apache.calcite.rel.rules">AggregateRemoveRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateStarTableRule.html" title="class in org.apache.calcite.rel.rules">AggregateStarTableRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateUnionAggregateRule.html" title="class in org.apache.calcite.rel.rules">AggregateUnionAggregateRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateUnionTransposeRule.html" title="class in org.apache.calcite.rel.rules">AggregateUnionTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/AggregateValuesRule.html" title="class in org.apache.calcite.rel.rules">AggregateValuesRule</a>, <a href="../../../../org/apache/calcite/interpreter/Bindables.BindableTableScanRule.html" title="class in org.apache.calcite.interpreter">Bindables.BindableTableScanRule</a>, <a href="../../../../org/apache/calcite/rel/rules/CalcMergeRule.html" title="class in org.apache.calcite.rel.rules">CalcMergeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/CalcRemoveRule.html" title="class in org.apache.calcite.rel.rules">CalcRemoveRule</a>, <a href="../../../../org/apache/calcite/rel/rules/CalcSplitRule.html" title="class in org.apache.calcite.rel.rules">CalcSplitRule</a>, <a href="../../../../org/apache/calcite/rel/rules/CoerceInputsRule.html" title="class in org.apache.calcite.rel.rules">CoerceInputsRule</a>, <a href="../../../../org/apache/calcite/plan/CommonRelSubExprRule.html" title="class in org.apache.calcite.plan">CommonRelSubExprRule</a>, <a href="../../../../org/apache/calcite/rel/convert/ConverterRule.html" title="class in org.apache.calcite.rel.convert">ConverterRule</a>, <a href="../../../../org/apache/calcite/adapter/csv/CsvProjectTableScanRule.html" title="class in org.apache.calcite.adapter.csv">CsvProjectTableScanRule</a>, <a href="../../../../org/apache/calcite/rel/rules/DateRangeRules.FilterDateRangeRule.html" title="class in org.apache.calcite.rel.rules">DateRangeRules.FilterDateRangeRule</a>, <a href="../../../../org/apache/calcite/adapter/druid/DruidRules.DruidAggregateProjectRule.html" title="class in org.apache.calcite.adapter.druid">DruidRules.DruidAggregateProjectRule</a>, <a href="../../../../org/apache/calcite/adapter/druid/DruidRules.DruidAggregateRule.html" title="class in org.apache.calcite.adapter.druid">DruidRules.DruidAggregateRule</a>, <a href="../../../../org/apache/calcite/adapter/druid/DruidRules.DruidFilterRule.html" title="class in org.apache.calcite.adapter.druid">DruidRules.DruidFilterRule</a>, <a href="../../../../org/apache/calcite/adapter/druid/DruidRules.DruidHavingFilterRule.html" title="class in org.apache.calcite.adapter.druid">DruidRules.DruidHavingFilterRule</a>, <a href="../../../../org/apache/calcite/adapter/druid/DruidRules.DruidPostAggregationProjectRule.html" title="class in org.apache.calcite.adapter.druid">DruidRules.DruidPostAggregationProjectRule</a>, <a href="../../../../org/apache/calcite/adapter/druid/DruidRules.DruidProjectRule.html" title="class in org.apache.calcite.adapter.druid">DruidRules.DruidProjectRule</a>, <a href="../../../../org/apache/calcite/adapter/druid/DruidRules.DruidSortRule.html" title="class in org.apache.calcite.adapter.druid">DruidRules.DruidSortRule</a>, <a href="../../../../org/apache/calcite/adapter/enumerable/EnumerableBatchNestedLoopJoinRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableBatchNestedLoopJoinRule</a>, <a href="../../../../org/apache/calcite/adapter/enumerable/EnumerableFilterToCalcRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableFilterToCalcRule</a>, <a href="../../../../org/apache/calcite/adapter/enumerable/EnumerableProjectToCalcRule.html" title="class in org.apache.calcite.adapter.enumerable">EnumerableProjectToCalcRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ExchangeRemoveConstantKeysRule.html" title="class in org.apache.calcite.rel.rules">ExchangeRemoveConstantKeysRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterAggregateTransposeRule.html" title="class in org.apache.calcite.rel.rules">FilterAggregateTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterCalcMergeRule.html" title="class in org.apache.calcite.rel.rules">FilterCalcMergeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterCorrelateRule.html" title="class in org.apache.calcite.rel.rules">FilterCorrelateRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterJoinRule.html" title="class in org.apache.calcite.rel.rules">FilterJoinRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterMergeRule.html" title="class in org.apache.calcite.rel.rules">FilterMergeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterMultiJoinMergeRule.html" title="class in org.apache.calcite.rel.rules">FilterMultiJoinMergeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterProjectTransposeRule.html" title="class in org.apache.calcite.rel.rules">FilterProjectTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterRemoveIsNotDistinctFromRule.html" title="class in org.apache.calcite.rel.rules">FilterRemoveIsNotDistinctFromRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterSetOpTransposeRule.html" title="class in org.apache.calcite.rel.rules">FilterSetOpTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterTableFunctionTransposeRule.html" title="class in org.apache.calcite.rel.rules">FilterTableFunctionTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterTableScanRule.html" title="class in org.apache.calcite.rel.rules">FilterTableScanRule</a>, <a href="../../../../org/apache/calcite/rel/rules/FilterToCalcRule.html" title="class in org.apache.calcite.rel.rules">FilterToCalcRule</a>, <a href="../../../../org/apache/calcite/rel/rules/IntersectToDistinctRule.html" title="class in org.apache.calcite.rel.rules">IntersectToDistinctRule</a>, <a href="../../../../org/apache/calcite/rel/rules/JoinAddRedundantSemiJoinRule.html" title="class in org.apache.calcite.rel.rules">JoinAddRedundantSemiJoinRule</a>, <a href="../../../../org/apache/calcite/rel/rules/JoinAssociateRule.html" title="class in org.apache.calcite.rel.rules">JoinAssociateRule</a>, <a href="../../../../org/apache/calcite/rel/rules/JoinCommuteRule.html" title="class in org.apache.calcite.rel.rules">JoinCommuteRule</a>, <a href="../../../../org/apache/calcite/rel/rules/JoinProjectTransposeRule.html" title="class in org.apache.calcite.rel.rules">JoinProjectTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/JoinPushExpressionsRule.html" title="class in org.apache.calcite.rel.rules">JoinPushExpressionsRule</a>, <a href="../../../../org/apache/calcite/rel/rules/JoinPushThroughJoinRule.html" title="class in org.apache.calcite.rel.rules">JoinPushThroughJoinRule</a>, <a href="../../../../org/apache/calcite/rel/rules/JoinPushTransitivePredicatesRule.html" title="class in org.apache.calcite.rel.rules">JoinPushTransitivePredicatesRule</a>, <a href="../../../../org/apache/calcite/rel/rules/JoinToCorrelateRule.html" title="class in org.apache.calcite.rel.rules">JoinToCorrelateRule</a>, <a href="../../../../org/apache/calcite/rel/rules/JoinToMultiJoinRule.html" title="class in org.apache.calcite.rel.rules">JoinToMultiJoinRule</a>, <a href="../../../../org/apache/calcite/rel/rules/JoinUnionTransposeRule.html" title="class in org.apache.calcite.rel.rules">JoinUnionTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/LoptOptimizeJoinRule.html" title="class in org.apache.calcite.rel.rules">LoptOptimizeJoinRule</a>, <a href="../../../../org/apache/calcite/rel/rules/MatchRule.html" title="class in org.apache.calcite.rel.rules">MatchRule</a>, <a href="../../../../org/apache/calcite/rel/rules/MaterializedViewFilterScanRule.html" title="class in org.apache.calcite.rel.rules">MaterializedViewFilterScanRule</a>, <a href="../../../../org/apache/calcite/rel/rules/materialize/MaterializedViewRule.html" title="class in org.apache.calcite.rel.rules.materialize">MaterializedViewRule</a>, <a href="../../../../org/apache/calcite/rel/rules/MultiJoinOptimizeBushyRule.html" title="class in org.apache.calcite.rel.rules">MultiJoinOptimizeBushyRule</a>, <a href="../../../../org/apache/calcite/piglet/PigToSqlAggregateRule.html" title="class in org.apache.calcite.piglet">PigToSqlAggregateRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectCalcMergeRule.html" title="class in org.apache.calcite.rel.rules">ProjectCalcMergeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectCorrelateTransposeRule.html" title="class in org.apache.calcite.rel.rules">ProjectCorrelateTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectFilterTransposeRule.html" title="class in org.apache.calcite.rel.rules">ProjectFilterTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectJoinJoinRemoveRule.html" title="class in org.apache.calcite.rel.rules">ProjectJoinJoinRemoveRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectJoinRemoveRule.html" title="class in org.apache.calcite.rel.rules">ProjectJoinRemoveRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectJoinTransposeRule.html" title="class in org.apache.calcite.rel.rules">ProjectJoinTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectMergeRule.html" title="class in org.apache.calcite.rel.rules">ProjectMergeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectMultiJoinMergeRule.html" title="class in org.apache.calcite.rel.rules">ProjectMultiJoinMergeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectRemoveRule.html" title="class in org.apache.calcite.rel.rules">ProjectRemoveRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectSetOpTransposeRule.html" title="class in org.apache.calcite.rel.rules">ProjectSetOpTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectSortTransposeRule.html" title="class in org.apache.calcite.rel.rules">ProjectSortTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectTableScanRule.html" title="class in org.apache.calcite.rel.rules">ProjectTableScanRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectToCalcRule.html" title="class in org.apache.calcite.rel.rules">ProjectToCalcRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectToWindowRule.html" title="class in org.apache.calcite.rel.rules">ProjectToWindowRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ProjectWindowTransposeRule.html" title="class in org.apache.calcite.rel.rules">ProjectWindowTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/PruneEmptyRules.PruneEmptyRule.html" title="class in org.apache.calcite.rel.rules">PruneEmptyRules.PruneEmptyRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ReduceDecimalsRule.html" title="class in org.apache.calcite.rel.rules">ReduceDecimalsRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ReduceExpressionsRule.html" title="class in org.apache.calcite.rel.rules">ReduceExpressionsRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SemiJoinFilterTransposeRule.html" title="class in org.apache.calcite.rel.rules">SemiJoinFilterTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SemiJoinJoinTransposeRule.html" title="class in org.apache.calcite.rel.rules">SemiJoinJoinTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SemiJoinProjectTransposeRule.html" title="class in org.apache.calcite.rel.rules">SemiJoinProjectTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SemiJoinRemoveRule.html" title="class in org.apache.calcite.rel.rules">SemiJoinRemoveRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SemiJoinRule.html" title="class in org.apache.calcite.rel.rules">SemiJoinRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SortJoinCopyRule.html" title="class in org.apache.calcite.rel.rules">SortJoinCopyRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SortJoinTransposeRule.html" title="class in org.apache.calcite.rel.rules">SortJoinTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SortProjectTransposeRule.html" title="class in org.apache.calcite.rel.rules">SortProjectTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SortRemoveConstantKeysRule.html" title="class in org.apache.calcite.rel.rules">SortRemoveConstantKeysRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SortRemoveRule.html" title="class in org.apache.calcite.rel.rules">SortRemoveRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SortUnionTransposeRule.html" title="class in org.apache.calcite.rel.rules">SortUnionTransposeRule</a>, <a href="../../../../org/apache/calcite/adapter/splunk/SplunkPushDownRule.html" title="class in org.apache.calcite.adapter.splunk">SplunkPushDownRule</a>, <a href="../../../../org/apache/calcite/rel/stream/StreamRules.DeltaAggregateTransposeRule.html" title="class in org.apache.calcite.rel.stream">StreamRules.DeltaAggregateTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/stream/StreamRules.DeltaFilterTransposeRule.html" title="class in org.apache.calcite.rel.stream">StreamRules.DeltaFilterTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/stream/StreamRules.DeltaJoinTransposeRule.html" title="class in org.apache.calcite.rel.stream">StreamRules.DeltaJoinTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/stream/StreamRules.DeltaProjectTransposeRule.html" title="class in org.apache.calcite.rel.stream">StreamRules.DeltaProjectTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/stream/StreamRules.DeltaSortTransposeRule.html" title="class in org.apache.calcite.rel.stream">StreamRules.DeltaSortTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/stream/StreamRules.DeltaTableScanRule.html" title="class in org.apache.calcite.rel.stream">StreamRules.DeltaTableScanRule</a>, <a href="../../../../org/apache/calcite/rel/stream/StreamRules.DeltaTableScanToEmptyRule.html" title="class in org.apache.calcite.rel.stream">StreamRules.DeltaTableScanToEmptyRule</a>, <a href="../../../../org/apache/calcite/rel/stream/StreamRules.DeltaUnionTransposeRule.html" title="class in org.apache.calcite.rel.stream">StreamRules.DeltaUnionTransposeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/SubQueryRemoveRule.html" title="class in org.apache.calcite.rel.rules">SubQueryRemoveRule</a>, <a href="../../../../org/apache/calcite/rel/rules/TableScanRule.html" title="class in org.apache.calcite.rel.rules">TableScanRule</a>, <a href="../../../../org/apache/calcite/rel/convert/TraitMatchingRule.html" title="class in org.apache.calcite.rel.convert">TraitMatchingRule</a>, <a href="../../../../org/apache/calcite/rel/rules/UnionEliminatorRule.html" title="class in org.apache.calcite.rel.rules">UnionEliminatorRule</a>, <a href="../../../../org/apache/calcite/rel/rules/UnionMergeRule.html" title="class in org.apache.calcite.rel.rules">UnionMergeRule</a>, <a href="../../../../org/apache/calcite/rel/rules/UnionPullUpConstantsRule.html" title="class in org.apache.calcite.rel.rules">UnionPullUpConstantsRule</a>, <a href="../../../../org/apache/calcite/rel/rules/UnionToDistinctRule.html" title="class in org.apache.calcite.rel.rules">UnionToDistinctRule</a>, <a href="../../../../org/apache/calcite/rel/rules/ValuesReduceRule.html" title="class in org.apache.calcite.rel.rules">ValuesReduceRule</a></dd> |
| </dl> |
| <hr> |
| <br> |
| <pre>public abstract class <span class="typeNameLabel">RelOptRule</span> |
| extends <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></pre> |
| <div class="block">A <code>RelOptRule</code> transforms an expression into another. It has a |
| list of <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan"><code>RelOptRuleOperand</code></a>s, which determine whether the rule can be |
| applied to a particular section of the tree. |
| |
| <p>The optimizer figures out which rules are applicable, then calls |
| <a href="../../../../org/apache/calcite/plan/RelOptRule.html#onMatch-org.apache.calcite.plan.RelOptRuleCall-"><code>onMatch(org.apache.calcite.plan.RelOptRuleCall)</code></a> on each of them.</p></div> |
| </li> |
| </ul> |
| </div> |
| <div class="summary"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- =========== FIELD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="field.summary"> |
| <!-- --> |
| </a> |
| <h3>Field Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Field Summary table, listing fields, and an explanation"> |
| <caption><span>Fields</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Field and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code>protected <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#description">description</a></span></code> |
| <div class="block">Description of rule, must be unique within planner.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#operands">operands</a></span></code> |
| <div class="block">Flattened list of operands.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colFirst"><code><a href="../../../../org/apache/calcite/tools/RelBuilderFactory.html" title="interface in org.apache.calcite.tools">RelBuilderFactory</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#relBuilderFactory">relBuilderFactory</a></span></code> |
| <div class="block">Factory for a builder for relational expressions.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- ======== CONSTRUCTOR SUMMARY ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.summary"> |
| <!-- --> |
| </a> |
| <h3>Constructor Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Constructor Summary table, listing constructors, and an explanation"> |
| <caption><span>Constructors</span><span class="tabEnd"> </span></caption> |
| <tr> |
| <th class="colOne" scope="col">Constructor and Description</th> |
| </tr> |
| <tr class="altColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#RelOptRule-org.apache.calcite.plan.RelOptRuleOperand-">RelOptRule</a></span>(<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand)</code> |
| <div class="block">Creates a rule.</div> |
| </td> |
| </tr> |
| <tr class="rowColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#RelOptRule-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.tools.RelBuilderFactory-java.lang.String-">RelOptRule</a></span>(<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand, |
| <a href="../../../../org/apache/calcite/tools/RelBuilderFactory.html" title="interface in org.apache.calcite.tools">RelBuilderFactory</a> relBuilderFactory, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> description)</code> |
| <div class="block">Creates a rule with an explicit description.</div> |
| </td> |
| </tr> |
| <tr class="altColor"> |
| <td class="colOne"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#RelOptRule-org.apache.calcite.plan.RelOptRuleOperand-java.lang.String-">RelOptRule</a></span>(<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> description)</code> |
| <div class="block">Creates a rule with an explicit description.</div> |
| </td> |
| </tr> |
| </table> |
| </li> |
| </ul> |
| <!-- ========== METHOD SUMMARY =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.summary"> |
| <!-- --> |
| </a> |
| <h3>Method Summary</h3> |
| <table class="memberSummary" border="0" cellpadding="3" cellspacing="0" summary="Method Summary table, listing methods, and an explanation"> |
| <caption><span id="t0" class="activeTableTab"><span>All Methods</span><span class="tabEnd"> </span></span><span id="t1" class="tableTab"><span><a href="javascript:show(1);">Static Methods</a></span><span class="tabEnd"> </span></span><span id="t2" class="tableTab"><span><a href="javascript:show(2);">Instance Methods</a></span><span class="tabEnd"> </span></span><span id="t3" class="tableTab"><span><a href="javascript:show(4);">Abstract Methods</a></span><span class="tabEnd"> </span></span><span id="t4" class="tableTab"><span><a href="javascript:show(8);">Concrete Methods</a></span><span class="tabEnd"> </span></span><span id="t6" class="tableTab"><span><a href="javascript:show(32);">Deprecated Methods</a></span><span class="tabEnd"> </span></span></caption> |
| <tr> |
| <th class="colFirst" scope="col">Modifier and Type</th> |
| <th class="colLast" scope="col">Method and Description</th> |
| </tr> |
| <tr id="i0" class="altColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#any--">any</a></span>()</code> |
| <div class="block">Creates a list of child operands that signifies that the operand matches |
| any number of child relational expressions.</div> |
| </td> |
| </tr> |
| <tr id="i1" class="rowColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#convert-org.apache.calcite.rel.RelNode-org.apache.calcite.plan.RelTrait-">convert</a></span>(<a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a> rel, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> toTrait)</code> |
| <div class="block">Converts one trait of a relational expression, if it does not |
| already have that trait.</div> |
| </td> |
| </tr> |
| <tr id="i2" class="altColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#convert-org.apache.calcite.rel.RelNode-org.apache.calcite.plan.RelTraitSet-">convert</a></span>(<a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a> rel, |
| <a href="../../../../org/apache/calcite/plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a> toTraits)</code> |
| <div class="block">Converts a relation expression to a given set of traits, if it does not |
| already have those traits.</div> |
| </td> |
| </tr> |
| <tr id="i3" class="rowColor"> |
| <td class="colFirst"><code>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#convertList-java.util.List-org.apache.calcite.plan.RelTrait-">convertList</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> rels, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait)</code> |
| <div class="block">Converts a list of relational expressions.</div> |
| </td> |
| </tr> |
| <tr id="i4" class="altColor"> |
| <td class="colFirst"><code>protected static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>><br>org.apache.calcite.plan.RelOptRule.ConverterRelOptRuleOperand</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#convertOperand-java.lang.Class-java.util.function.Predicate-org.apache.calcite.plan.RelTrait-">convertOperand</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html?is-external=true" title="class or interface in java.util.function">Predicate</a><? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait)</code> |
| <div class="block">Creates an operand for a converter rule.</div> |
| </td> |
| </tr> |
| <tr id="i5" class="rowColor"> |
| <td class="colFirst"><code>protected static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>><br>org.apache.calcite.plan.RelOptRule.ConverterRelOptRuleOperand</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#convertOperand-java.lang.Class-com.google.common.base.Predicate-org.apache.calcite.plan.RelTrait-">convertOperand</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| com.google.common.base.Predicate<? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait)</code> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="block"><span class="deprecationComment">Use <a href="../../../../org/apache/calcite/plan/RelOptRule.html#convertOperand-java.lang.Class-com.google.common.base.Predicate-org.apache.calcite.plan.RelTrait-"><code>convertOperand(Class, Predicate, RelTrait)</code></a>.</span></div> |
| </div> |
| </td> |
| </tr> |
| <tr id="i6" class="altColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#equals-java.lang.Object-">equals</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> obj)</code> </td> |
| </tr> |
| <tr id="i7" class="rowColor"> |
| <td class="colFirst"><code>protected boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#equals-org.apache.calcite.plan.RelOptRule-">equals</a></span>(<a href="../../../../org/apache/calcite/plan/RelOptRule.html" title="class in org.apache.calcite.plan">RelOptRule</a> that)</code> |
| <div class="block">Returns whether this rule is equal to another rule.</div> |
| </td> |
| </tr> |
| <tr id="i8" class="altColor"> |
| <td class="colFirst"><code><a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#getOperand--">getOperand</a></span>()</code> |
| <div class="block">Returns the root operand of this rule</div> |
| </td> |
| </tr> |
| <tr id="i9" class="rowColor"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#getOperands--">getOperands</a></span>()</code> |
| <div class="block">Returns a flattened list of operands of this rule.</div> |
| </td> |
| </tr> |
| <tr id="i10" class="altColor"> |
| <td class="colFirst"><code><a href="../../../../org/apache/calcite/plan/Convention.html" title="interface in org.apache.calcite.plan">Convention</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#getOutConvention--">getOutConvention</a></span>()</code> |
| <div class="block">Returns the convention of the result of firing this rule, null if |
| not known.</div> |
| </td> |
| </tr> |
| <tr id="i11" class="rowColor"> |
| <td class="colFirst"><code><a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#getOutTrait--">getOutTrait</a></span>()</code> |
| <div class="block">Returns the trait which will be modified as a result of firing this rule, |
| or null if the rule is not a converter rule.</div> |
| </td> |
| </tr> |
| <tr id="i12" class="altColor"> |
| <td class="colFirst"><code>int</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#hashCode--">hashCode</a></span>()</code> </td> |
| </tr> |
| <tr id="i13" class="rowColor"> |
| <td class="colFirst"><code>boolean</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#matches-org.apache.calcite.plan.RelOptRuleCall-">matches</a></span>(<a href="../../../../org/apache/calcite/plan/RelOptRuleCall.html" title="class in org.apache.calcite.plan">RelOptRuleCall</a> call)</code> |
| <div class="block">Returns whether this rule could possibly match the given operands.</div> |
| </td> |
| </tr> |
| <tr id="i14" class="altColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#none--">none</a></span>()</code> |
| <div class="block">Creates an empty list of child operands.</div> |
| </td> |
| </tr> |
| <tr id="i15" class="rowColor"> |
| <td class="colFirst"><code>abstract void</code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#onMatch-org.apache.calcite.plan.RelOptRuleCall-">onMatch</a></span>(<a href="../../../../org/apache/calcite/plan/RelOptRuleCall.html" title="class in org.apache.calcite.plan">RelOptRuleCall</a> call)</code> |
| <div class="block">Receives notification about a rule match.</div> |
| </td> |
| </tr> |
| <tr id="i16" class="altColor"> |
| <td class="colFirst"><code>static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>><br><a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#operand-java.lang.Class-org.apache.calcite.plan.RelOptRuleOperandChildren-">operand</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> operandList)</code> |
| <div class="block">Creates an operand that matches a relational expression that has no |
| children.</div> |
| </td> |
| </tr> |
| <tr id="i17" class="rowColor"> |
| <td class="colFirst"><code>static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>><br><a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#operand-java.lang.Class-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.plan.RelOptRuleOperand...-">operand</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> first, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>... rest)</code> |
| <div class="block">Creates an operand that matches a relational expression with a given |
| list of children.</div> |
| </td> |
| </tr> |
| <tr id="i18" class="altColor"> |
| <td class="colFirst"><code>static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>><br><a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#operand-java.lang.Class-org.apache.calcite.plan.RelTrait-com.google.common.base.Predicate-org.apache.calcite.plan.RelOptRuleOperandChildren-">operand</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait, |
| com.google.common.base.Predicate<? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> operandList)</code> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> |
| <div class="block"><span class="deprecationComment">Use <a href="../../../../org/apache/calcite/plan/RelOptRule.html#operandJ-java.lang.Class-org.apache.calcite.plan.RelTrait-java.util.function.Predicate-org.apache.calcite.plan.RelOptRuleOperandChildren-"><code>operandJ(java.lang.Class<R>, org.apache.calcite.plan.RelTrait, java.util.function.Predicate<? super R>, org.apache.calcite.plan.RelOptRuleOperandChildren)</code></a></span></div> |
| </div> |
| </td> |
| </tr> |
| <tr id="i19" class="rowColor"> |
| <td class="colFirst"><code>static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>><br><a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#operand-java.lang.Class-org.apache.calcite.plan.RelTrait-com.google.common.base.Predicate-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.plan.RelOptRuleOperand...-">operand</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait, |
| com.google.common.base.Predicate<? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> first, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>... rest)</code> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> </div> |
| </td> |
| </tr> |
| <tr id="i20" class="altColor"> |
| <td class="colFirst"><code>static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>><br><a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#operand-java.lang.Class-org.apache.calcite.plan.RelTrait-org.apache.calcite.plan.RelOptRuleOperandChildren-">operand</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> operandList)</code> |
| <div class="block">Creates an operand that matches a relational expression that has no |
| children.</div> |
| </td> |
| </tr> |
| <tr id="i21" class="rowColor"> |
| <td class="colFirst"><code>static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>><br><a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#operandJ-java.lang.Class-org.apache.calcite.plan.RelTrait-java.util.function.Predicate-org.apache.calcite.plan.RelOptRuleOperandChildren-">operandJ</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html?is-external=true" title="class or interface in java.util.function">Predicate</a><? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> operandList)</code> |
| <div class="block">Creates an operand that matches a relational expression that has a |
| particular trait and predicate.</div> |
| </td> |
| </tr> |
| <tr id="i22" class="altColor"> |
| <td class="colFirst"><code>static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>><br><a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#operandJ-java.lang.Class-org.apache.calcite.plan.RelTrait-java.util.function.Predicate-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.plan.RelOptRuleOperand...-">operandJ</a></span>(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html?is-external=true" title="class or interface in java.util.function">Predicate</a><? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> first, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>... rest)</code> |
| <div class="block">Creates an operand that matches a relational expression that has no |
| children.</div> |
| </td> |
| </tr> |
| <tr id="i23" class="rowColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#some-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.plan.RelOptRuleOperand...-">some</a></span>(<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> first, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>... rest)</code> |
| <div class="block">Creates a list of child operands that matches child relational |
| expressions in the order they appear.</div> |
| </td> |
| </tr> |
| <tr id="i24" class="altColor"> |
| <td class="colFirst"><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#toString--">toString</a></span>()</code> |
| <div class="block">Returns the description of this rule.</div> |
| </td> |
| </tr> |
| <tr id="i25" class="rowColor"> |
| <td class="colFirst"><code>static <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a></code></td> |
| <td class="colLast"><code><span class="memberNameLink"><a href="../../../../org/apache/calcite/plan/RelOptRule.html#unordered-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.plan.RelOptRuleOperand...-">unordered</a></span>(<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> first, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>... rest)</code> |
| <div class="block">Creates a list of child operands that matches child relational |
| expressions in any order.</div> |
| </td> |
| </tr> |
| </table> |
| <ul class="blockList"> |
| <li class="blockList"><a name="methods.inherited.from.class.java.lang.Object"> |
| <!-- --> |
| </a> |
| <h3>Methods inherited from class java.lang.<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></h3> |
| <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#clone--" title="class or interface in java.lang">clone</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#finalize--" title="class or interface in java.lang">finalize</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#getClass--" title="class or interface in java.lang">getClass</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notify--" title="class or interface in java.lang">notify</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#notifyAll--" title="class or interface in java.lang">notifyAll</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait--" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-" title="class or interface in java.lang">wait</a>, <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#wait-long-int-" title="class or interface in java.lang">wait</a></code></li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| <div class="details"> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <!-- ============ FIELD DETAIL =========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="field.detail"> |
| <!-- --> |
| </a> |
| <h3>Field Detail</h3> |
| <a name="description"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>description</h4> |
| <pre>protected final <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> description</pre> |
| <div class="block">Description of rule, must be unique within planner. Default is the name |
| of the class sans package name, but derived classes are encouraged to |
| override.</div> |
| </li> |
| </ul> |
| <a name="relBuilderFactory"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>relBuilderFactory</h4> |
| <pre>public final <a href="../../../../org/apache/calcite/tools/RelBuilderFactory.html" title="interface in org.apache.calcite.tools">RelBuilderFactory</a> relBuilderFactory</pre> |
| <div class="block">Factory for a builder for relational expressions. |
| |
| <p>The actual builder is available via <a href="../../../../org/apache/calcite/plan/RelOptRuleCall.html#builder--"><code>RelOptRuleCall.builder()</code></a>.</div> |
| </li> |
| </ul> |
| <a name="operands"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>operands</h4> |
| <pre>public final <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>> operands</pre> |
| <div class="block">Flattened list of operands.</div> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ========= CONSTRUCTOR DETAIL ======== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="constructor.detail"> |
| <!-- --> |
| </a> |
| <h3>Constructor Detail</h3> |
| <a name="RelOptRule-org.apache.calcite.plan.RelOptRuleOperand-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>RelOptRule</h4> |
| <pre>public RelOptRule(<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand)</pre> |
| <div class="block">Creates a rule.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>operand</code> - root operand, must not be null</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="RelOptRule-org.apache.calcite.plan.RelOptRuleOperand-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>RelOptRule</h4> |
| <pre>public RelOptRule(<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> description)</pre> |
| <div class="block">Creates a rule with an explicit description.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>operand</code> - root operand, must not be null</dd> |
| <dd><code>description</code> - Description, or null to guess description</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="RelOptRule-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.tools.RelBuilderFactory-java.lang.String-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>RelOptRule</h4> |
| <pre>public RelOptRule(<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand, |
| <a href="../../../../org/apache/calcite/tools/RelBuilderFactory.html" title="interface in org.apache.calcite.tools">RelBuilderFactory</a> relBuilderFactory, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> description)</pre> |
| <div class="block">Creates a rule with an explicit description.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>operand</code> - root operand, must not be null</dd> |
| <dd><code>description</code> - Description, or null to guess description</dd> |
| <dd><code>relBuilderFactory</code> - Builder for relational expressions</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| <!-- ============ METHOD DETAIL ========== --> |
| <ul class="blockList"> |
| <li class="blockList"><a name="method.detail"> |
| <!-- --> |
| </a> |
| <h3>Method Detail</h3> |
| <a name="operand-java.lang.Class-org.apache.calcite.plan.RelOptRuleOperandChildren-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>operand</h4> |
| <pre>public static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> operandList)</pre> |
| <div class="block">Creates an operand that matches a relational expression that has no |
| children.</div> |
| <dl> |
| <dt><span class="paramLabel">Type Parameters:</span></dt> |
| <dd><code>R</code> - Class of relational expression to match</dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>clazz</code> - Class of relational expression to match (must not be null)</dd> |
| <dd><code>operandList</code> - Child operands</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Operand that matches a relational expression that has no |
| children</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="operand-java.lang.Class-org.apache.calcite.plan.RelTrait-org.apache.calcite.plan.RelOptRuleOperandChildren-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>operand</h4> |
| <pre>public static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> operandList)</pre> |
| <div class="block">Creates an operand that matches a relational expression that has no |
| children.</div> |
| <dl> |
| <dt><span class="paramLabel">Type Parameters:</span></dt> |
| <dd><code>R</code> - Class of relational expression to match</dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>clazz</code> - Class of relational expression to match (must not be null)</dd> |
| <dd><code>trait</code> - Trait to match, or null to match any trait</dd> |
| <dd><code>operandList</code> - Child operands</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Operand that matches a relational expression that has no |
| children</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="operandJ-java.lang.Class-org.apache.calcite.plan.RelTrait-java.util.function.Predicate-org.apache.calcite.plan.RelOptRuleOperandChildren-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>operandJ</h4> |
| <pre>public static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operandJ(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html?is-external=true" title="class or interface in java.util.function">Predicate</a><? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> operandList)</pre> |
| <div class="block">Creates an operand that matches a relational expression that has a |
| particular trait and predicate.</div> |
| <dl> |
| <dt><span class="paramLabel">Type Parameters:</span></dt> |
| <dd><code>R</code> - Class of relational expression to match</dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>clazz</code> - Class of relational expression to match (must not be null)</dd> |
| <dd><code>trait</code> - Trait to match, or null to match any trait</dd> |
| <dd><code>predicate</code> - Additional match predicate</dd> |
| <dd><code>operandList</code> - Child operands</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Operand that matches a relational expression that has a |
| particular trait and predicate</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="operand-java.lang.Class-org.apache.calcite.plan.RelTrait-com.google.common.base.Predicate-org.apache.calcite.plan.RelOptRuleOperandChildren-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>operand</h4> |
| <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a> |
| public static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait, |
| com.google.common.base.Predicate<? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> operandList)</pre> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> <span class="deprecationComment">Use <a href="../../../../org/apache/calcite/plan/RelOptRule.html#operandJ-java.lang.Class-org.apache.calcite.plan.RelTrait-java.util.function.Predicate-org.apache.calcite.plan.RelOptRuleOperandChildren-"><code>operandJ(java.lang.Class<R>, org.apache.calcite.plan.RelTrait, java.util.function.Predicate<? super R>, org.apache.calcite.plan.RelOptRuleOperandChildren)</code></a></span></div> |
| </li> |
| </ul> |
| <a name="operandJ-java.lang.Class-org.apache.calcite.plan.RelTrait-java.util.function.Predicate-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.plan.RelOptRuleOperand...-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>operandJ</h4> |
| <pre>public static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operandJ(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html?is-external=true" title="class or interface in java.util.function">Predicate</a><? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> first, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>... rest)</pre> |
| <div class="block">Creates an operand that matches a relational expression that has no |
| children.</div> |
| <dl> |
| <dt><span class="paramLabel">Type Parameters:</span></dt> |
| <dd><code>R</code> - Class of relational expression to match</dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>clazz</code> - Class of relational expression to match (must not be null)</dd> |
| <dd><code>trait</code> - Trait to match, or null to match any trait</dd> |
| <dd><code>predicate</code> - Additional match predicate</dd> |
| <dd><code>first</code> - First operand</dd> |
| <dd><code>rest</code> - Rest operands</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Operand</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="operand-java.lang.Class-org.apache.calcite.plan.RelTrait-com.google.common.base.Predicate-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.plan.RelOptRuleOperand...-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>operand</h4> |
| <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a> |
| public static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait, |
| com.google.common.base.Predicate<? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> first, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>... rest)</pre> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> </div> |
| </li> |
| </ul> |
| <a name="operand-java.lang.Class-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.plan.RelOptRuleOperand...-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>operand</h4> |
| <pre>public static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> operand(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> first, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>... rest)</pre> |
| <div class="block">Creates an operand that matches a relational expression with a given |
| list of children. |
| |
| <p>Shorthand for <code>operand(clazz, some(...))</code>. |
| |
| <p>If you wish to match a relational expression that has no children |
| (that is, a leaf node), write <code>operand(clazz, none())</code></p>. |
| |
| <p>If you wish to match a relational expression that has any number of |
| children, write <code>operand(clazz, any())</code></p>.</div> |
| <dl> |
| <dt><span class="paramLabel">Type Parameters:</span></dt> |
| <dd><code>R</code> - Class of relational expression to match</dd> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>clazz</code> - Class of relational expression to match (must not be null)</dd> |
| <dd><code>first</code> - First operand</dd> |
| <dd><code>rest</code> - Rest operands</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Operand that matches a relational expression with a given |
| list of children</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="convertOperand-java.lang.Class-java.util.function.Predicate-org.apache.calcite.plan.RelTrait-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>convertOperand</h4> |
| <pre>protected static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> org.apache.calcite.plan.RelOptRule.ConverterRelOptRuleOperand convertOperand(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| <a href="https://docs.oracle.com/javase/8/docs/api/java/util/function/Predicate.html?is-external=true" title="class or interface in java.util.function">Predicate</a><? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait)</pre> |
| <div class="block">Creates an operand for a converter rule.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>clazz</code> - Class of relational expression to match (must not be null)</dd> |
| <dd><code>trait</code> - Trait to match, or null to match any trait</dd> |
| <dd><code>predicate</code> - Predicate to apply to relational expression</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="convertOperand-java.lang.Class-com.google.common.base.Predicate-org.apache.calcite.plan.RelTrait-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>convertOperand</h4> |
| <pre><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Deprecated.html?is-external=true" title="class or interface in java.lang">@Deprecated</a> |
| protected static <R extends <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> org.apache.calcite.plan.RelOptRule.ConverterRelOptRuleOperand convertOperand(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Class.html?is-external=true" title="class or interface in java.lang">Class</a><R> clazz, |
| com.google.common.base.Predicate<? super R> predicate, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait)</pre> |
| <div class="block"><span class="deprecatedLabel">Deprecated.</span> <span class="deprecationComment">Use <a href="../../../../org/apache/calcite/plan/RelOptRule.html#convertOperand-java.lang.Class-com.google.common.base.Predicate-org.apache.calcite.plan.RelTrait-"><code>convertOperand(Class, Predicate, RelTrait)</code></a>.</span></div> |
| </li> |
| </ul> |
| <a name="some-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.plan.RelOptRuleOperand...-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>some</h4> |
| <pre>public static <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> some(<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> first, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>... rest)</pre> |
| <div class="block">Creates a list of child operands that matches child relational |
| expressions in the order they appear.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>first</code> - First child operand</dd> |
| <dd><code>rest</code> - Remaining child operands (may be empty)</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>List of child operands that matches child relational |
| expressions in the order</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="unordered-org.apache.calcite.plan.RelOptRuleOperand-org.apache.calcite.plan.RelOptRuleOperand...-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>unordered</h4> |
| <pre>public static <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> unordered(<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> first, |
| <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>... rest)</pre> |
| <div class="block">Creates a list of child operands that matches child relational |
| expressions in any order. |
| |
| <p>This is useful when matching a relational expression which |
| can have a variable number of children. For example, the rule to |
| eliminate empty children of a Union would have operands</p> |
| |
| <blockquote>Operand(Union, true, Operand(Empty))</blockquote> |
| |
| <p>and given the relational expressions</p> |
| |
| <blockquote>Union(LogicalFilter, Empty, LogicalProject)</blockquote> |
| |
| <p>would fire the rule with arguments</p> |
| |
| <blockquote>{Union, Empty}</blockquote> |
| |
| <p>It is up to the rule to deduce the other children, or indeed the |
| position of the matched child.</p></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>first</code> - First child operand</dd> |
| <dd><code>rest</code> - Remaining child operands (may be empty)</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>List of child operands that matches child relational |
| expressions in any order</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="none--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>none</h4> |
| <pre>public static <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> none()</pre> |
| <div class="block">Creates an empty list of child operands.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Empty list of child operands</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="any--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>any</h4> |
| <pre>public static <a href="../../../../org/apache/calcite/plan/RelOptRuleOperandChildren.html" title="class in org.apache.calcite.plan">RelOptRuleOperandChildren</a> any()</pre> |
| <div class="block">Creates a list of child operands that signifies that the operand matches |
| any number of child relational expressions.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>List of child operands that signifies that the operand matches |
| any number of child relational expressions</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getOperand--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOperand</h4> |
| <pre>public <a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a> getOperand()</pre> |
| <div class="block">Returns the root operand of this rule</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>the root operand of this rule</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getOperands--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOperands</h4> |
| <pre>public <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../../org/apache/calcite/plan/RelOptRuleOperand.html" title="class in org.apache.calcite.plan">RelOptRuleOperand</a>> getOperands()</pre> |
| <div class="block">Returns a flattened list of operands of this rule.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>flattened list of operands</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="hashCode--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>hashCode</h4> |
| <pre>public int hashCode()</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#hashCode--" title="class or interface in java.lang">hashCode</a></code> in class <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="equals-java.lang.Object-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>equals</h4> |
| <pre>public boolean equals(<a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a> obj)</pre> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#equals-java.lang.Object-" title="class or interface in java.lang">equals</a></code> in class <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="equals-org.apache.calcite.plan.RelOptRule-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>equals</h4> |
| <pre>protected boolean equals(<a href="../../../../org/apache/calcite/plan/RelOptRule.html" title="class in org.apache.calcite.plan">RelOptRule</a> that)</pre> |
| <div class="block">Returns whether this rule is equal to another rule. |
| |
| <p>The base implementation checks that the rules have the same class and |
| that the operands are equal; derived classes can override.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>that</code> - Another rule</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Whether this rule is equal to another rule</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="matches-org.apache.calcite.plan.RelOptRuleCall-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>matches</h4> |
| <pre>public boolean matches(<a href="../../../../org/apache/calcite/plan/RelOptRuleCall.html" title="class in org.apache.calcite.plan">RelOptRuleCall</a> call)</pre> |
| <div class="block">Returns whether this rule could possibly match the given operands. |
| |
| <p>This method is an opportunity to apply side-conditions to a rule. The |
| <a href="../../../../org/apache/calcite/plan/RelOptPlanner.html" title="interface in org.apache.calcite.plan"><code>RelOptPlanner</code></a> calls this method after matching all operands of |
| the rule, and before calling <a href="../../../../org/apache/calcite/plan/RelOptRule.html#onMatch-org.apache.calcite.plan.RelOptRuleCall-"><code>onMatch(RelOptRuleCall)</code></a>. |
| |
| <p>In implementations of <a href="../../../../org/apache/calcite/plan/RelOptPlanner.html" title="interface in org.apache.calcite.plan"><code>RelOptPlanner</code></a> which may queue up a |
| matched <a href="../../../../org/apache/calcite/plan/RelOptRuleCall.html" title="class in org.apache.calcite.plan"><code>RelOptRuleCall</code></a> for a long time before calling |
| <a href="../../../../org/apache/calcite/plan/RelOptRule.html#onMatch-org.apache.calcite.plan.RelOptRuleCall-"><code>onMatch(RelOptRuleCall)</code></a>, this method is beneficial because it |
| allows the planner to discard rules earlier in the process. |
| |
| <p>The default implementation of this method returns <code>true</code>. |
| It is acceptable for any implementation of this method to give a false |
| positives, that is, to say that the rule matches the operands but have |
| <a href="../../../../org/apache/calcite/plan/RelOptRule.html#onMatch-org.apache.calcite.plan.RelOptRuleCall-"><code>onMatch(RelOptRuleCall)</code></a> subsequently not generate any |
| successors. |
| |
| <p>The following script is useful to identify rules which commonly |
| produce no successors. You should override this method for these rules: |
| |
| <blockquote> |
| <pre><code>awk ' |
| /Apply rule/ {rule=$4; ruleCount[rule]++;} |
| /generated 0 successors/ {ruleMiss[rule]++;} |
| END { |
| printf "%-30s %s %s\n", "Rule", "Fire", "Miss"; |
| for (i in ruleCount) { |
| printf "%-30s %5d %5d\n", i, ruleCount[i], ruleMiss[i]; |
| } |
| } ' FarragoTrace.log</code></pre> |
| </blockquote></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>call</code> - Rule call which has been determined to match all operands of |
| this rule</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>whether this RelOptRule matches a given RelOptRuleCall</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="onMatch-org.apache.calcite.plan.RelOptRuleCall-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>onMatch</h4> |
| <pre>public abstract void onMatch(<a href="../../../../org/apache/calcite/plan/RelOptRuleCall.html" title="class in org.apache.calcite.plan">RelOptRuleCall</a> call)</pre> |
| <div class="block">Receives notification about a rule match. At the time that this method is |
| called, <a href="../../../../org/apache/calcite/plan/RelOptRuleCall.html#rels"><code>call.rels</code></a> holds the set of relational |
| expressions which match the operands to the rule; <code> |
| call.rels[0]</code> is the root expression. |
| |
| <p>Typically a rule would check that the nodes are valid matches, creates |
| a new expression, then calls back <a href="../../../../org/apache/calcite/plan/RelOptRuleCall.html#transformTo-org.apache.calcite.rel.RelNode-java.util.Map-org.apache.calcite.plan.RelHintsPropagator-"><code>RelOptRuleCall.transformTo(org.apache.calcite.rel.RelNode, java.util.Map<org.apache.calcite.rel.RelNode, org.apache.calcite.rel.RelNode>, org.apache.calcite.plan.RelHintsPropagator)</code></a> to |
| register the expression.</p></div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>call</code> - Rule call</dd> |
| <dt><span class="seeLabel">See Also:</span></dt> |
| <dd><a href="../../../../org/apache/calcite/plan/RelOptRule.html#matches-org.apache.calcite.plan.RelOptRuleCall-"><code>matches(RelOptRuleCall)</code></a></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getOutConvention--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOutConvention</h4> |
| <pre>public <a href="../../../../org/apache/calcite/plan/Convention.html" title="interface in org.apache.calcite.plan">Convention</a> getOutConvention()</pre> |
| <div class="block">Returns the convention of the result of firing this rule, null if |
| not known.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Convention of the result of firing this rule, null if |
| not known</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="getOutTrait--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>getOutTrait</h4> |
| <pre>public <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> getOutTrait()</pre> |
| <div class="block">Returns the trait which will be modified as a result of firing this rule, |
| or null if the rule is not a converter rule.</div> |
| <dl> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>Trait which will be modified as a result of firing this rule, |
| or null if the rule is not a converter rule</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="toString--"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>toString</h4> |
| <pre>public final <a href="https://docs.oracle.com/javase/8/docs/api/java/lang/String.html?is-external=true" title="class or interface in java.lang">String</a> toString()</pre> |
| <div class="block">Returns the description of this rule. |
| |
| <p>It must be unique (for rules that are not equal) and must consist of |
| only the characters A-Z, a-z, 0-9, '_', '.', '(', ')', '-', ',', '[', ']', ':', ' '. |
| It must start with a letter.</div> |
| <dl> |
| <dt><span class="overrideSpecifyLabel">Overrides:</span></dt> |
| <dd><code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true#toString--" title="class or interface in java.lang">toString</a></code> in class <code><a href="https://docs.oracle.com/javase/8/docs/api/java/lang/Object.html?is-external=true" title="class or interface in java.lang">Object</a></code></dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="convert-org.apache.calcite.rel.RelNode-org.apache.calcite.plan.RelTraitSet-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>convert</h4> |
| <pre>public static <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a> convert(<a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a> rel, |
| <a href="../../../../org/apache/calcite/plan/RelTraitSet.html" title="class in org.apache.calcite.plan">RelTraitSet</a> toTraits)</pre> |
| <div class="block">Converts a relation expression to a given set of traits, if it does not |
| already have those traits.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>rel</code> - Relational expression to convert</dd> |
| <dd><code>toTraits</code> - desired traits</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a relational expression with the desired traits; never null</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="convert-org.apache.calcite.rel.RelNode-org.apache.calcite.plan.RelTrait-"> |
| <!-- --> |
| </a> |
| <ul class="blockList"> |
| <li class="blockList"> |
| <h4>convert</h4> |
| <pre>public static <a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a> convert(<a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a> rel, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> toTrait)</pre> |
| <div class="block">Converts one trait of a relational expression, if it does not |
| already have that trait.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>rel</code> - Relational expression to convert</dd> |
| <dd><code>toTrait</code> - Desired trait</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>a relational expression with the desired trait; never null</dd> |
| </dl> |
| </li> |
| </ul> |
| <a name="convertList-java.util.List-org.apache.calcite.plan.RelTrait-"> |
| <!-- --> |
| </a> |
| <ul class="blockListLast"> |
| <li class="blockList"> |
| <h4>convertList</h4> |
| <pre>protected static <a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> convertList(<a href="https://docs.oracle.com/javase/8/docs/api/java/util/List.html?is-external=true" title="class or interface in java.util">List</a><<a href="../../../../org/apache/calcite/rel/RelNode.html" title="interface in org.apache.calcite.rel">RelNode</a>> rels, |
| <a href="../../../../org/apache/calcite/plan/RelTrait.html" title="interface in org.apache.calcite.plan">RelTrait</a> trait)</pre> |
| <div class="block">Converts a list of relational expressions.</div> |
| <dl> |
| <dt><span class="paramLabel">Parameters:</span></dt> |
| <dd><code>rels</code> - Relational expressions</dd> |
| <dd><code>trait</code> - Trait to add to each relational expression</dd> |
| <dt><span class="returnLabel">Returns:</span></dt> |
| <dd>List of converted relational expressions, never null</dd> |
| </dl> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| </div> |
| <!-- ========= END OF CLASS DATA ========= --> |
| <!-- ======= START OF BOTTOM NAVBAR ====== --> |
| <div class="bottomNav"><a name="navbar.bottom"> |
| <!-- --> |
| </a> |
| <div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div> |
| <a name="navbar.bottom.firstrow"> |
| <!-- --> |
| </a> |
| <ul class="navList" title="Navigation"> |
| <li><a href="../../../../overview-summary.html">Overview</a></li> |
| <li><a href="package-summary.html">Package</a></li> |
| <li class="navBarCell1Rev">Class</li> |
| <li><a href="package-tree.html">Tree</a></li> |
| <li><a href="../../../../deprecated-list.html">Deprecated</a></li> |
| <li><a href="../../../../index-all.html">Index</a></li> |
| <li><a href="../../../../help-doc.html">Help</a></li> |
| </ul> |
| <div class="aboutLanguage"><b>Apache Calcite</b></div> |
| </div> |
| <div class="subNav"> |
| <ul class="navList"> |
| <li><a href="../../../../org/apache/calcite/plan/RelOptQuery.html" title="class in org.apache.calcite.plan"><span class="typeNameLink">Prev Class</span></a></li> |
| <li><a href="../../../../org/apache/calcite/plan/RelOptRuleCall.html" title="class in org.apache.calcite.plan"><span class="typeNameLink">Next Class</span></a></li> |
| </ul> |
| <ul class="navList"> |
| <li><a href="../../../../index.html?org/apache/calcite/plan/RelOptRule.html" target="_top">Frames</a></li> |
| <li><a href="RelOptRule.html" target="_top">No Frames</a></li> |
| </ul> |
| <ul class="navList" id="allclasses_navbar_bottom"> |
| <li><a href="../../../../allclasses-noframe.html">All Classes</a></li> |
| </ul> |
| <div> |
| <script type="text/javascript"><!-- |
| allClassesLink = document.getElementById("allclasses_navbar_bottom"); |
| if(window==top) { |
| allClassesLink.style.display = "block"; |
| } |
| else { |
| allClassesLink.style.display = "none"; |
| } |
| //--> |
| </script> |
| </div> |
| <div> |
| <ul class="subNavList"> |
| <li>Summary: </li> |
| <li>Nested | </li> |
| <li><a href="#field.summary">Field</a> | </li> |
| <li><a href="#constructor.summary">Constr</a> | </li> |
| <li><a href="#method.summary">Method</a></li> |
| </ul> |
| <ul class="subNavList"> |
| <li>Detail: </li> |
| <li><a href="#field.detail">Field</a> | </li> |
| <li><a href="#constructor.detail">Constr</a> | </li> |
| <li><a href="#method.detail">Method</a></li> |
| </ul> |
| </div> |
| <a name="skip.navbar.bottom"> |
| <!-- --> |
| </a></div> |
| <!-- ======== END OF BOTTOM NAVBAR ======= --> |
| <p class="legalCopy"><small>Copyright © 2012-2020 Apache Software Foundation. All Rights Reserved.</small></p> |
| </body> |
| </html> |