See: Description
Interface  Description 

RexAction 
A
RexAction is called when a RexPattern finds a match. 
RexBiVisitor<R,P> 
Visitor pattern for traversing a tree of
RexNode objects
and passing a payload to each. 
RexExecutor 
Can reduce expressions, writing a literal for each into a list.

RexPattern 
A
RexPattern represents an expression with holes in it. 
RexSqlConvertlet  
RexSqlConvertletTable 
Collection of
RexSqlConvertlet s. 
RexToSqlNodeConverter  
RexVisitor<R> 
Visitor pattern for traversing a tree of
RexNode objects. 
Class  Description 

LogicVisitor 
Visitor pattern for traversing a tree of
RexNode objects. 
RexAnalyzer 
Analyzes an expression, figures out what are the unbound variables,
assigns a variety of values to each unbound variable, and evaluates
the expression.

RexBuilder 
Factory for row expressions.

RexCall 
An expression formed by a call to an operator with zero or more expressions
as operands.

RexCallBinding 
RexCallBinding implements SqlOperatorBinding by
referring to an underlying collection of RexNode operands. 
RexChecker 
Visitor which checks the validity of a
RexNode expression. 
RexCorrelVariable 
Reference to the current row of a correlating relational expression.

RexDynamicParam 
Dynamic parameter reference in a rowexpression.

RexExecutable 
Result of compiling code generated from a
RexNode expression. 
RexExecutorImpl 
Evaluates a
RexNode expression. 
RexFieldAccess 
Access to a field of a rowexpression.

RexFieldCollation 
Expression combined with sort flags (DESCENDING, NULLS LAST).

RexInputRef 
Variable which references a field of an input relational expression.

RexInterpreter 
Evaluates
RexNode expressions. 
RexLiteral 
Constant value in a rowexpression.

RexLocalRef 
Local variable.

RexMultisetUtil 
Utility class for various methods related to multisets.

RexNode 
Row expression.

RexOver 
Call to an aggregate function over a window.

RexPatternFieldRef 
Variable which references a field of an input relational expression

RexPermutationShuttle 
Visitor which replaces
RexLocalRef objects after the expressions in a
RexProgram have been reordered. 
RexPermuteInputsShuttle 
Shuttle which applies a permutation to its input fields.

RexProgram 
A collection of expressions which read inputs, compute output expressions,
and optionally use a condition to filter rows.

RexProgramBuilder 
Workspace for constructing a
RexProgram . 
RexRangeRef 
Reference to a range of columns.

RexShuttle 
Passes over a rowexpression, calling a handler method for each node,
appropriate to the type of the node.

RexSimplify 
Context required to simplify a rowexpression.

RexSlot 
Abstract base class for
RexInputRef and RexLocalRef . 
RexSlot.SelfPopulatingList 
Threadsafe list that populates itself if you make a reference beyond
the end of the list.

RexSqlReflectiveConvertletTable 
Implementation of
RexSqlConvertletTable . 
RexSqlStandardConvertletTable 
Standard implementation of
RexSqlConvertletTable . 
RexSubQuery 
Scalar expression that represents an IN, EXISTS or scalar subquery.

RexTableInputRef 
Variable which references a column of a table occurrence in a relational plan.

RexTableInputRef.RelTableRef 
Identifies uniquely a table by its qualified name and its entity number (occurrence)

RexToSqlNodeConverterImpl 
Standard implementation of
RexToSqlNodeConverter . 
RexTransformer 
Takes a tree of
RexNode objects and transforms it into another in one
sense equivalent tree. 
RexUtil 
Utility methods concerning rowexpressions.

RexUtil.ExprSimplifier 
Deep expressions simplifier.

RexUtil.FieldAccessFinder 
Visitor which builds a bitmap of the inputs used by an expression.

RexUtil.FixNullabilityShuttle 
Shuttle that fixes up an expression to match changes in nullability of
input fields.

RexUtil.SubQueryFinder 
Visitor that throws
Util.FoundOne if
applied to an expression that contains a RexSubQuery . 
RexVariable 
A rowexpression which references a field.

RexVisitorImpl<R> 
Default implementation of
RexVisitor , which visits each node but does
nothing while it's there. 
RexWindow 
Specification of the window of rows over which a
RexOver windowed
aggregate is evaluated. 
RexWindowBound 
Abstracts "XX PRECEDING/FOLLOWING" and "CURRENT ROW" bounds for windowed
aggregates.

A SqlToRelConverter
converts a SQL
parse tree consisting of SqlNode
objects into
a relational expression (RelNode
). Several
kinds of nodes in this tree have row expressions
(RexNode
).
After the relational expression has been optimized, a
JavaRelImplementor
converts it
into to a plan. If the plan is a Java parse tree, rowexpressions are
translated into equivalent Java expressions.
Every rowexpression has a type. (Compare with
SqlNode
, which is created before validation,
and therefore types may not be available.)
Every node in the parse tree is a RexNode
.
Subtypes are:
RexLiteral
represents a boolean,
numeric, string, or date constant, or the value NULL
.
RexVariable
represents a leaf of the
tree. It has subtypes:
RexCorrelVariable
is a
correlating variable for nestedloop joins
RexInputRef
refers to a field
of an input relational expression
RexCall
is a call to an
operator or function. By means of special operators, we can
use this construct to represent virtually every nonleaf node
in the tree.
RexRangeRef
refers to a
collection of contiguous fields from an input relational
expression. It usually exists only during translation.
Expressions are generally
created using a RexBuilder
factory.
org.apache.calcite.sql
SQL object modelorg.apache.calcite.plan
Core classes, including
RelDataType
and
RelDataTypeFactory
.Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.