Package org.apache.calcite.adapter.enumerable
Query optimizer rules for Java calling convention.
-
Interface Summary Interface Description AggAddContext Information for a call toAggImplementor.implementAdd(AggContext, AggAddContext)
.AggContext Information on the aggregate calculation context.AggImplementor Implements an aggregate function by generating expressions to initialize, add to, and get a result from, an accumulator.AggregateLambdaFactory<TSource,TOrigAccumulate,TAccumulate,TResult,TKey> Generates lambda functions used inEnumerableAggregate
.AggResetContext Information for a call toAggImplementor.implementReset(AggContext, AggResetContext)
.AggResultContext Information for a call toAggImplementor.implementResult(AggContext, AggResultContext)
CallImplementor Implements a call via given translator.EnumerableRel A relational expression of one of theEnumerableConvention
calling conventions.NestedBlockBuilder Allows to build nested code blocks with tracking of current context and the nullability of particularRexNode
expressions.NotNullImplementor Simplified version ofCallImplementor
that does not know about null semantics.PhysType Physical type of a row.RexToLixTranslator.InputGetter Translates a field of an input to an expression.WinAggAddContext Information for a call toAggImplementor.implementAdd(AggContext, AggAddContext)
.WinAggContext Marker interface to allowAggImplementor
to tell if it is used in regular or windowed context.WinAggFrameContext Provides information on the current window.WinAggFrameResultContext Provides information on the current window when computing the result of the aggregation.WinAggImplementor Implements a windowed aggregate function by generating expressions to initialize, add to, and get a result from, an accumulator.WinAggResetContext Information for a call toAggImplementor.implementReset(AggContext, AggResetContext)
.WinAggResultContext Information for a call toAggImplementor.implementResult(AggContext, AggResultContext)
. -
Class Summary Class Description AggImpState Represents internal state when implementing aggregate functions.EnumerableAggregate Implementation ofAggregate
inenumerable calling convention
.EnumerableAggregateRule Rule to convert aLogicalAggregate
to anEnumerableAggregate
.EnumerableBindable Relational expression that converts an enumerable input to interpretable calling convention.EnumerableBindable.EnumerableToBindableConverterRule Rule that converts any enumerable relational expression to bindable.EnumerableCalc Implementation ofCalc
inenumerable calling convention
.EnumerableCalcRule Rule to convert aLogicalCalc
to anEnumerableCalc
.EnumerableCollect Implementation ofCollect
inenumerable calling convention
.EnumerableCollectRule Rule to convert anCollect
to anEnumerableCollect
.EnumerableCorrelate Implementation ofCorrelate
inenumerable calling convention
.EnumerableCorrelateRule Implementation of nested loops over enumerable inputs.EnumerableFilter Implementation ofFilter
inenumerable calling convention
.EnumerableFilterRule Rule to convert aLogicalFilter
to anEnumerableFilter
.EnumerableFilterToCalcRule Variant ofFilterToCalcRule
forenumerable calling convention
.EnumerableInterpretable Relational expression that converts an enumerable input to interpretable calling convention.EnumerableInterpretable.EnumerableNode Interpreter node that reads from anEnumerable
.EnumerableInterpreter Relational expression that executes its children using an interpreter.EnumerableInterpreterRule EnumerableIntersect Implementation ofIntersect
inenumerable calling convention
.EnumerableIntersectRule Rule to convert aLogicalIntersect
to anEnumerableIntersect
.EnumerableJoin Implementation ofJoin
inenumerable calling convention
.EnumerableJoinRule Planner rule that converts aLogicalJoin
relational expressionenumerable calling convention
.EnumerableLimit Relational expression that applies a limit and/or offset to its input.EnumerableLimitRule Rule to convert anSort
that hasoffset
orfetch
set to anEnumerableLimit
on top of a "pure"Sort
that has no offset or fetch.EnumerableMergeJoin Implementation ofJoin
inenumerable calling convention
using a merge algorithm.EnumerableMergeJoinRule Planner rule that converts aLogicalJoin
relational expressionenumerable calling convention
.EnumerableMinus Implementation ofMinus
inenumerable calling convention
.EnumerableMinusRule Rule to convert anLogicalMinus
to anEnumerableMinus
.EnumerableProject Implementation ofProject
inenumerable calling convention
.EnumerableProjectRule Rule to convert aLogicalProject
to anEnumerableProject
.EnumerableProjectToCalcRule Variant ofProjectToCalcRule
forenumerable calling convention
.EnumerableRel.Result Result of implementing an enumerable relational expression by generating Java code.EnumerableRelImplementor Subclass ofRelImplementor
for relational operators ofEnumerableConvention
calling convention.EnumerableRelImplementor.TypeFinder Visitor that finds types in anExpression
tree.EnumerableRules Rules and relational operators for theenumerable calling convention
.EnumerableSemiJoin Implementation ofSemiJoin
inenumerable calling convention
.EnumerableSemiJoinRule Planner rule that converts aSemiJoin
relational expressionenumerable calling convention
.EnumerableSort Implementation ofSort
inenumerable calling convention
.EnumerableSortRule Rule to convert anSort
to anEnumerableSort
.EnumerableTableFunctionScan Implementation ofTableFunctionScan
inenumerable calling convention
.EnumerableTableFunctionScanRule Planner rule that converts aLogicalTableFunctionScan
relational expressionenumerable calling convention
.EnumerableTableModify Implementation ofTableModify
inenumerable calling convention
.EnumerableTableModifyRule Planner rule that converts aLogicalTableModify
relational expressionenumerable calling convention
.EnumerableTableScan Implementation ofTableScan
inenumerable calling convention
.EnumerableTableScanRule Planner rule that converts aLogicalTableFunctionScan
relational expressionenumerable calling convention
.EnumerableThetaJoin Implementation ofJoin
inenumerable calling convention
that allows conditions that are not just=
(equals).EnumerableUncollect Implementation ofUncollect
inenumerable calling convention
.EnumerableUncollectRule Rule to convert anUncollect
to anEnumerableUncollect
.EnumerableUnion Implementation ofUnion
inenumerable calling convention
.EnumerableUnionRule Rule to convert anLogicalUnion
to anEnumerableUnion
.EnumerableValues Implementation ofValues
inenumerable calling convention
.EnumerableValuesRule Planner rule that converts aLogicalValues
relational expressionenumerable calling convention
.EnumerableWindow Implementation ofWindow
inenumerable calling convention
.EnumerableWindow.WindowRelInputGetter Implementation ofRexToLixTranslator.InputGetter
suitable for generating implementations of windowed aggregate functions.EnumerableWindowRule Rule to convert aLogicalWindow
to anEnumerableWindow
.EnumUtils Utilities for generating programs in the Enumerable (functional) style.JavaRelImplementor Abstract base class for implementations ofRelImplementor
that generate java code.NestedBlockBuilderImpl Allows to build nested code blocks with tracking of current context and the nullability of particularRexNode
expressions.OrderedAggregateLambdaFactory<TSource,TKey,TSortKey,TOrigAccumulate,TResult> Generate aggregate lambdas that sorts the input source before calling each aggregate adder.OrderedAggregateLambdaFactory.LazySource<TSource> Cache the input sources.PhysTypeImpl Implementation ofPhysType
.ReflectiveCallNotNullImplementor Implementation ofNotNullImplementor
that calls a givenMethod
.RexImpTable Contains implementations of Rex operators as Java code.RexImpTable.BinaryImplementor Implementor for binary operators.RexImpTable.CaseImplementor Implementor for the SQLCASE
operator.RexImpTable.CastImplementor Implementor for the SQLCAST
operator.RexImpTable.CastOptimizedImplementor Implementor for the SQLCAST
function that optimizes if, say, the argument is already of the desired type.RexImpTable.CoalesceImplementor Implementor for the SQLCOALESCE
operator.RexImpTable.CollectImplementor Implementor for theCOLLECT
aggregate function.RexImpTable.CountImplementor Implementor for theCOUNT
aggregate function.RexImpTable.CountWinImplementor Implementor for theCOUNT
windowed aggregate function.RexImpTable.DatetimeArithmeticImplementor Implementor for various datetime arithmetic.RexImpTable.DenseRankImplementor Implementor for theDENSE_RANK
windowed aggregate function.RexImpTable.ExtractImplementor Implementor for theEXTRACT(unit FROM datetime)
function.RexImpTable.FirstLastValueImplementor Implementor for theFIRST_VALUE
andLAST_VALUE
windowed aggregate functions.RexImpTable.FirstValueImplementor Implementor for theFIRST_VALUE
windowed aggregate function.RexImpTable.FloorImplementor Implementor for theFLOOR
andCEIL
functions.RexImpTable.FusionImplementor Implementor for theFUSION
aggregate function.RexImpTable.GroupingImplementor Implementor for theGROUPING
aggregate function.RexImpTable.IsXxxImplementor Implements "IS XXX" operations such as "IS NULL" or "IS NOT TRUE".RexImpTable.ItemImplementor Implementor for theITEM
SQL operator.RexImpTable.JsonArrayAggImplementor Implementor for theJSON_ARRAYAGG
aggregate function.RexImpTable.JsonObjectAggImplementor Implementor for theJSON_OBJECTAGG
aggregate function.RexImpTable.LagImplementor Implementor for theLAG
windowed aggregate function.RexImpTable.LastValueImplementor Implementor for theLAST_VALUE
windowed aggregate function.RexImpTable.LeadImplementor Implementor for theLEAD
windowed aggregate function.RexImpTable.LeadLagImplementor Implementor for theLEAD
andLAG
windowed aggregate functions.RexImpTable.MethodImplementor Implementor for a function that generates calls to a given method.RexImpTable.MethodNameImplementor Implementor for SQL functions that generates calls to a given method name.RexImpTable.MinMaxImplementor Implementor for theMIN
andMAX
aggregate functions.RexImpTable.NotImplementor Implementor for theNOT
operator.RexImpTable.NthValueImplementor Implementor for theNTH_VALUE
windowed aggregate function.RexImpTable.NtileImplementor Implementor for theNTILE
windowed aggregate function.RexImpTable.RankImplementor Implementor for theRANK
windowed aggregate function.RexImpTable.ReinterpretImplementor Implementor for theREINTERPRET
internal SQL operator.RexImpTable.RowNumberImplementor Implementor for theROW_NUMBER
windowed aggregate function.RexImpTable.SingleValueImplementor Implementor for theSINGLE_VALUE
aggregate function.RexImpTable.SumImplementor Implementor for theSUM
windowed aggregate function.RexImpTable.SystemFunctionImplementor Implementor for SQL system functions.RexImpTable.TrimImplementor Implementor for theTRIM
function.RexImpTable.UnaryImplementor Implementor for unary operators.RexImpTable.UserDefinedAggReflectiveImplementor Implementor for user-defined aggregate functions.RexImpTable.ValueConstructorImplementor Implementor for a value-constructor.RexToLixTranslator TranslatesREX expressions
tolinq4j expressions
.RexToLixTranslator.InputGetterImpl Implementation ofRexToLixTranslator.InputGetter
that callsPhysType.fieldReference(org.apache.calcite.linq4j.tree.Expression, int)
.SequencedAdderAggregateLambdaFactory<TSource,TAccumulate,TResult,TKey> Implementation ofAggregateLambdaFactory
that applies a sequence of accumulator adders to input source.SourceSorter<TAccumulate,TSource,TSortKey> Helper that combines the sorting process and accumulating process against the aggregate execution, used withOrderedAggregateLambdaFactory
.StrictAggImplementor The base implementation of strict aggregate function.StrictWinAggImplementor The base implementation of strict window aggregate function. -
Enum Summary Enum Description EnumerableConvention Family of calling conventions that return results as anEnumerable
.EnumerableRel.Prefer Preferred physical type.JavaRowFormat How a row is represented as a Java value.NullPolicy Describes when a function/operator will return null.RexImpTable.NullAs Strategy what an operator should return if one of its arguments is null.WinAggImplementor.SeekType Allows to access rows in window partition relative to first/last and current row. -
Exception Summary Exception Description RexToLixTranslator.AlwaysNull Thrown in the unusual (but not erroneous) situation where the expression we are translating is the null literal but we have already checked that it is not null.