Package | Description |
---|---|
org.apache.calcite.adapter.jdbc |
Query provider based on a JDBC data source.
|
org.apache.calcite.plan |
Defines interfaces for constructing rule-based optimizers of
relational expressions.
|
org.apache.calcite.rel.core |
Defines core relational expressions.
|
org.apache.calcite.rel.metadata |
Defines metadata interfaces and utilities for relational
expressions.
|
org.apache.calcite.rel.rules |
Provides a core set of planner rules.
|
org.apache.calcite.rex |
Provides a language for representing row-expressions.
|
org.apache.calcite.sql2rel |
Translates a SQL parse tree to relational expression.
|
org.apache.calcite.tools |
Provides utility classes.
|
Modifier and Type | Class and Description |
---|---|
private static class |
JdbcRules.CheckingUserDefinedFunctionVisitor
Visitor for checking whether part of projection is a user defined function or not
|
Modifier and Type | Class and Description |
---|---|
static class |
RelOptUtil.InputFinder
Visitor which builds a bitmap of the inputs used by an expression.
|
static class |
RelOptUtil.InputReferencedVisitor
Shuttle that finds the set of inputs that are used.
|
static class |
RelOptUtil.RexInputConverter
Walks an expression tree, converting the index of RexInputRefs based on
some adjustment factor.
|
static class |
RelOptUtil.VariableUsedVisitor
Visitor that finds all variables used in an expression.
|
private static class |
RexImplicationChecker.InputUsageFinder
Visitor that builds a usage map of inputs used by an expression.
|
Modifier and Type | Class and Description |
---|---|
private static class |
Match.AggregateFinder
Find aggregate functions in operands.
|
private static class |
Match.PatternVarFinder
Visits the operands of an aggregate call to retrieve relevant pattern
variables.
|
Modifier and Type | Class and Description |
---|---|
private static class |
RelMdExpressionLineage.RexReplacer
Replaces expressions with their equivalences.
|
(package private) class |
RelMdPredicates.JoinConditionBasedPredicateInference.EquivalenceFinder
Find expressions of the form 'col_x = col_y'.
|
private static class |
RelMdUtil.CardOfProjExpr
Visitor that walks over a scalar expression and computes the
cardinality of its result.
|
Modifier and Type | Class and Description |
---|---|
private static class |
CalcRelSplitter.HighestUsageFinder
Builds an array of the highest level which contains an expression which
uses each expression as an input.
|
private static class |
CalcRelSplitter.ImplementTester
Visitor which returns whether an expression can be implemented in a given
type of relational expression.
|
private static class |
CalcRelSplitter.InputToCommonExprConverter
Shuttle which converts every reference to an input field in an expression
to a reference to a common sub-expression.
|
private static class |
CalcRelSplitter.MaxInputFinder
Finds the highest level used by any of the inputs of a given expression.
|
private static class |
DateRangeRules.ExtractFinder
Visitor that searches for calls to
EXTRACT , FLOOR or
CEIL , building a list of distinct time units. |
(package private) static class |
DateRangeRules.ExtractShuttle
Walks over an expression, replacing calls to
EXTRACT , FLOOR and CEIL with date ranges. |
private class |
FilterRemoveIsNotDistinctFromRule.RemoveIsNotDistinctFromRexShuttle
Shuttle that removes 'x IS NOT DISTINCT FROM y' and converts it
to 'CASE WHEN x IS NULL THEN y IS NULL WHEN y IS NULL THEN x IS
NULL ELSE x = y END'.
|
private class |
JoinToMultiJoinRule.InputReferenceCounter
Visitor that keeps a reference count of the inputs used by an expression.
|
static class |
ProjectCorrelateTransposeRule.RexFieldAccessReplacer
Visitor for RexNodes which replaces
RexCorrelVariable with specified. |
private class |
PushProjector.InputSpecialOpFinder
Visitor which builds a bitmap of the inputs used by an expressions, as
well as locating expressions corresponding to special operators.
|
private class |
PushProjector.RefAndExprConverter
Walks an expression tree, replacing input refs with new values to reflect
projection and converting special expressions to field references.
|
class |
ReduceDecimalsRule.DecimalShuttle
A shuttle which converts decimal expressions to expressions based on
longs.
|
protected static class |
ReduceExpressionsRule.CaseShuttle
Shuttle that pushes predicates into a CASE.
|
protected static class |
ReduceExpressionsRule.ReducibleExprLocator
Helper class used to locate expressions that either can be reduced to
literals or contain redundant casts.
|
protected static class |
ReduceExpressionsRule.RexReplacer
Replaces expressions with their reductions.
|
private static class |
SubQueryRemoveRule.ReplaceSubQueryShuttle
Shuttle that replaces occurrences of a given
RexSubQuery with a replacement
expression. |
private static class |
ValuesReduceRule.MyRexShuttle
Shuttle that converts inputs to literals.
|
Modifier and Type | Class and Description |
---|---|
private static class |
RexAnalyzer.VariableCollector
Collects the variables (or other bindable sites) in an expression, and
counts features (such as CAST) that
RexInterpreter cannot
handle. |
class |
RexChecker
Visitor which checks the validity of a
RexNode expression. |
(package private) class |
RexCopier
Shuttle which creates a deep copy of a Rex expression.
|
class |
RexInterpreter
Evaluates
RexNode expressions. |
private static class |
RexMultisetUtil.RexCallMultisetOperatorCounter
A RexShuttle that traverse all RexNode and counts total number of
RexCalls traversed and number of multiset calls traversed.
|
private static class |
RexOver.Finder
|
class |
RexPermutationShuttle
Visitor which replaces
RexLocalRef objects after the expressions in a
RexProgram have been reordered. |
class |
RexPermuteInputsShuttle
Shuttle which applies a permutation to its input fields.
|
(package private) static class |
RexProgram.Checker
Visitor which walks over a program and checks validity.
|
private class |
RexProgram.ConstantFinder
Walks over an expression and determines whether it is constant.
|
(package private) static class |
RexProgram.ExpansionShuttle
A RexShuttle used in the implementation of
RexProgram.expandLocalRef(org.apache.calcite.rex.RexLocalRef) . |
private class |
RexProgram.Marshaller
Given an expression in a program, creates a clone of the expression with
sub-expressions (represented by
RexLocalRef s) fully expanded. |
private class |
RexProgram.ReferenceCounter
Visitor which marks which expressions are used.
|
private class |
RexProgramBuilder.RegisterInputShuttle
Shuttle which walks over an expression, registering each sub-expression.
|
private class |
RexProgramBuilder.RegisterMidputShuttle
Extension to
RexProgramBuilder.RegisterInputShuttle which allows expressions to be
in terms of inputs or previous common sub-expressions. |
private class |
RexProgramBuilder.RegisterOutputShuttle
Shuttle which walks over an expression, registering each sub-expression.
|
private class |
RexProgramBuilder.RegisterShuttle
Shuttle that visits a tree of
RexNode and registers them
in a program. |
private class |
RexProgramBuilder.UpdateRefShuttle
Shuttle which rewires
RexLocalRef using a list of updated
references |
class |
RexShuttle
Passes over a row-expression, calling a handler method for each node,
appropriate to the type of the node.
|
(package private) static class |
RexSimplify.SafeRexVisitor
Decides whether it is safe to flatten the given case part into AND/ORs
|
(package private) static class |
RexUtil.ConstantFinder
Walks over an expression and determines whether it is constant.
|
private static class |
RexUtil.CorrelationFinder
Visitor that throws
Util.FoundOne if
applied to an expression that contains a RexCorrelVariable . |
private static class |
RexUtil.ExpressionNormalizer
Walks over expressions and builds a bank of common sub-expressions.
|
static class |
RexUtil.ExprSimplifier
Deprecated.
|
static class |
RexUtil.FieldAccessFinder
Visitor which builds a bitmap of the inputs used by an expression.
|
static class |
RexUtil.FixNullabilityShuttle
Shuttle that fixes up an expression to match changes in nullability of
input fields.
|
private static class |
RexUtil.ForwardRefFinder
Walks over an expression and throws an exception if it finds an
RexInputRef with an ordinal beyond the number of fields in the
input row type, or a RexLocalRef with ordinal greater than that set
using RexUtil.ForwardRefFinder.setLimit(int) . |
private static class |
RexUtil.RexShiftShuttle
Shuttle that adds
offset to each RexInputRef in an
expression. |
static class |
RexUtil.SubQueryFinder
Visitor that throws
Util.FoundOne if
applied to an expression that contains a RexSubQuery . |
class |
RexVisitorImpl<R>
Default implementation of
RexVisitor , which visits each node but does
nothing while it's there. |
Modifier and Type | Method and Description |
---|---|
<R> R |
RexFieldAccess.accept(RexVisitor<R> visitor) |
<R> RexWindowBound |
RexWindowBound.accept(RexVisitor<R> visitor)
Transforms the bound via
RexVisitor . |
<R> RexWindowBound |
RexWindowBound.RexWindowBoundBounded.accept(RexVisitor<R> visitor) |
<R> R |
RexRangeRef.accept(RexVisitor<R> visitor) |
abstract <R> R |
RexNode.accept(RexVisitor<R> visitor)
Accepts a visitor, dispatching to the right overloaded
visitXxx method. |
<R> R |
RexSubQuery.accept(RexVisitor<R> visitor) |
<R> R |
RexCorrelVariable.accept(RexVisitor<R> visitor) |
<R> R |
RexInputRef.accept(RexVisitor<R> visitor) |
<R> R |
RexCall.accept(RexVisitor<R> visitor) |
<R> R |
RexDynamicParam.accept(RexVisitor<R> visitor) |
<R> R |
RexLiteral.accept(RexVisitor<R> visitor) |
<R> R |
RexOver.accept(RexVisitor<R> visitor) |
<R> R |
RexPatternFieldRef.accept(RexVisitor<R> visitor) |
<R> R |
RexLocalRef.accept(RexVisitor<R> visitor) |
<R> R |
RexTableInputRef.accept(RexVisitor<R> visitor) |
static <T extends RexNode> |
RexUtil.apply(RexVisitor<T> shuttle,
T[] exprs)
Applies a shuttle to an array of expressions.
|
static void |
RexUtil.apply(RexVisitor<java.lang.Void> visitor,
java.util.List<? extends RexNode> exprs,
RexNode expr)
Applies a visitor to a list of expressions and, if specified, a single
expression.
|
static void |
RexUtil.apply(RexVisitor<java.lang.Void> visitor,
RexNode[] exprs,
RexNode expr)
Applies a visitor to an array of expressions and, if specified, a single
expression.
|
static boolean |
RexVisitorImpl.visitArrayAnd(RexVisitor<java.lang.Boolean> visitor,
java.util.List<RexNode> exprs)
Visits an array of expressions, returning the logical 'and' of their
results.
|
static boolean |
RexVisitorImpl.visitArrayOr(RexVisitor<java.lang.Boolean> visitor,
java.util.List<RexNode> exprs)
Visits an array of expressions, returning the logical 'or' of their
results.
|
Modifier and Type | Class and Description |
---|---|
private static class |
CorrelationReferenceFinder.MyRexVisitor
Replaces alternative names of correlation variable to its canonical name.
|
private static class |
DeduplicateCorrelateVariables.DeduplicateCorrelateVariablesShuttle
Replaces alternative names of correlation variable to its canonical name.
|
private static class |
RelDecorrelator.DecorrelateRexShuttle
Shuttle that decorrelates.
|
private class |
RelDecorrelator.RemoveCorrelationRexShuttle
Shuttle that removes correlations.
|
private class |
RelStructuredTypeFlattener.RewriteRexShuttle
Shuttle that rewrites scalar expressions.
|
private class |
SqlToRelConverter.HistogramShuttle
Shuttle which walks over a tree of
RexNode s and applies 'over' to
all agg functions. |
private static class |
SqlToRelConverter.RexAccessShuttle
Shuttle that replace outer
RexInputRef with
RexFieldAccess , and adjust offset to
each inner RexInputRef in the lateral join
condition. |
Modifier and Type | Class and Description |
---|---|
private class |
RelBuilder.Shifter
Shuttle that shifts a predicate's inputs to the left, replacing early
ones with references to a
RexCorrelVariable . |
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.