| Class | Description | 
|---|---|
| AbstractCollectionRule | |
| AbstractRemoveRedundantTypeExpressionsRule | |
| AbstractUsedVariablesProcessingRule | The AbstractUsedVariablesProcessingRule provides a frame work to track used
 variables to assist in some rewrite rules that must track used variables in
 the above plan. | 
| AbstractVXQueryAggregateRule | |
| CollectionFileDomain | |
| ConsolidateAssignAggregateRule | The rule searches for assign operator with an aggregate function expression
 immediately following an aggregate operator with a sequence expression. | 
| ConsolidateDescandantChild | The rule searches for assign operator with an aggregate function expression
 immediately following an aggregate operator with a sequence expression. | 
| ConsolidateUnnestsRule | The rule searches for an unnest operator (1) immediately following an unnest
 operator (2). | 
| ConvertAssignSortDistinctNodesToOperatorsRule | |
| ConvertAssignToAggregateRule | The rule searches for assign operators that have a xquery aggregate function. | 
| ConvertAssignToUnnestRule | The rule searches for unnest(iterate) operator followed by an assign(child)
 operator and merges the assign into the unnest operator. | 
| ConvertFromAlgebricksExpressionsRule | The rule searches for where the Algebricks builtin function are temporarly in the plan in place of XQuery function. | 
| ConvertToAlgebricksExpressionsRule | The rule searches for where the XQuery function are used in place of Algebricks builtin function. | 
| EliminateSubplanForSingleItemsRule | The rule searches for subplans that only have one item per tuple. | 
| EliminateSubplanForSinglePathsRule | The rule searches for subplans that only have one path of execution. | 
| EliminateUnnestAggregateSequencesRule | The rule searches for unnest followed by an aggregate operator with a
 sequence function and converts the aggregate operator to an assign. | 
| EliminateUnnestAggregateSubplanRule | The rule searches for unnest followed by subplan with the root operator an
 aggregate and removes the aggregate subplan. | 
| IntroduceCollectionRule | Find the default query plan created for collection and updated it to use
 parallelization. | 
| IntroduceTwoStepAggregateRule | The rule searches for aggregate operators with an aggregate function
 expression that has not been initialized for two step aggregation. | 
| PushChildIntoDataScanRule | The rule searches for an unnest operator immediately following a data scan
 operator. | 
| PushFunctionsOntoEqJoinBranches | |
| RemoveRedundantBooleanExpressionsRule | The rule searches for where the xquery boolean function is used. | 
| RemoveRedundantCastExpressionsRule | The rule searches for where the xquery cast function is used. | 
| RemoveRedundantDataExpressionsRule | The rule searches for where the xquery data function is used. | 
| RemoveRedundantPromoteExpressionsRule | The rule searches for where the xquery promote function is used. | 
| RemoveRedundantTreatExpressionsRule | The rule searches for where the xquery treat function is used. | 
| RemoveUnusedSortDistinctNodesRule | The rule searches for where the xquery sort distinct function is used and
 determines if the sort and distinct is necessary. | 
| RemoveUnusedUnnestIterateRule | The rule searches for an unnest operator (1) immediately following an unnest
 or data scan operator (2). | 
| ReplaceSourceMapInDocExpression | The rule searches for where the function_doc1 function is in the plan in place of XQuery function. | 
| SetCollectionDataSourceRule | Find the collection functions and generate the data source objects. | 
| SetVariableIdContextRule | Set the default context for the variable id in the optimization context. | 
Copyright © 2019 Apache Software Foundation. All Rights Reserved.