| Package | Description |
|---|---|
| org.apache.calcite.adapter.elasticsearch |
Base classes for a query provider based on an Elasticsearch DB.
|
| org.apache.calcite.adapter.enumerable |
Query optimizer rules for Java calling convention.
|
| 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.
|
| Modifier and Type | Method and Description |
|---|---|
(package private) static String |
ElasticsearchRules.isItem(RexCall call)
Returns 'string' if it is a call to item['string'], null otherwise.
|
private Void |
ElasticsearchFilter.Translator.translateBinary(String op,
String rop,
RexCall call)
Translates a call to a binary operator, reversing arguments if
necessary.
|
String |
ElasticsearchRules.RexToElasticsearchTranslator.visitCall(RexCall call) |
String |
MapProjectionFieldVisitor.visitCall(RexCall call) |
| Modifier and Type | Method and Description |
|---|---|
private static RexCall |
RexImpTable.call2(boolean harmonize,
RexToLixTranslator translator,
RexCall call) |
| Modifier and Type | Method and Description |
|---|---|
private boolean |
RexImpTable.BinaryImplementor.anyAnyOperands(RexCall call)
Returns whether any of a call's operands have ANY type.
|
private static RexCall |
RexImpTable.call2(boolean harmonize,
RexToLixTranslator translator,
RexCall call) |
private Expression |
RexImpTable.BinaryImplementor.callBackupMethodAnyType(RexToLixTranslator translator,
RexCall call,
List<Expression> expressions) |
Expression |
ReflectiveCallNotNullImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
NotNullImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands)
Implements a call with assumption that all the null-checking is
implemented by caller.
|
Expression |
RexImpTable.TrimImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
RexImpTable.FloorImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
RexImpTable.MethodImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
RexImpTable.SequenceImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
RexImpTable.MethodNameImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
RexImpTable.BinaryImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> expressions) |
Expression |
RexImpTable.UnaryImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
RexImpTable.ExtractImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
RexImpTable.CastImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
RexImpTable.ReinterpretImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
RexImpTable.NotImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
RexImpTable.DatetimeArithmeticImplementor.implement(RexToLixTranslator translator,
RexCall call,
List<Expression> translatedOperands) |
Expression |
CallImplementor.implement(RexToLixTranslator translator,
RexCall call,
RexImpTable.NullAs nullAs)
Implements a call.
|
Expression |
RexImpTable.CaseImplementor.implement(RexToLixTranslator translator,
RexCall call,
RexImpTable.NullAs nullAs) |
Expression |
RexImpTable.CastOptimizedImplementor.implement(RexToLixTranslator translator,
RexCall call,
RexImpTable.NullAs nullAs) |
Expression |
RexImpTable.ValueConstructorImplementor.implement(RexToLixTranslator translator,
RexCall call,
RexImpTable.NullAs nullAs) |
Expression |
RexImpTable.ItemImplementor.implement(RexToLixTranslator translator,
RexCall call,
RexImpTable.NullAs nullAs) |
Expression |
RexImpTable.SystemFunctionImplementor.implement(RexToLixTranslator translator,
RexCall call,
RexImpTable.NullAs nullAs) |
Expression |
RexImpTable.IsXxxImplementor.implement(RexToLixTranslator translator,
RexCall call,
RexImpTable.NullAs nullAs) |
private static Expression |
RexImpTable.implementCall(RexToLixTranslator translator,
RexCall call,
NotNullImplementor implementor,
RexImpTable.NullAs nullAs) |
private static Expression |
RexImpTable.implementNullSemantics(RexToLixTranslator translator,
RexCall call,
RexImpTable.NullAs nullAs,
NullPolicy nullPolicy,
NotNullImplementor implementor) |
private static Expression |
RexImpTable.implementNullSemantics0(RexToLixTranslator translator,
RexCall call,
RexImpTable.NullAs nullAs,
NullPolicy nullPolicy,
boolean harmonize,
NotNullImplementor implementor) |
private Expression |
RexImpTable.CaseImplementor.implementRecurse(RexToLixTranslator translator,
RexCall call,
RexImpTable.NullAs nullAs,
int i) |
private static boolean |
RexImpTable.nullable(RexCall call,
int i) |
private Expression |
RexToLixTranslator.translateCall(RexCall call,
RexImpTable.NullAs nullAs)
Translates a call to an operator or function.
|
| Modifier and Type | Method and Description |
|---|---|
private static RexCall |
RelOptUtil.collapseExpandedIsNotDistinctFromExpr(RexCall call,
RexBuilder rexBuilder)
|
| Modifier and Type | Method and Description |
|---|---|
private static RexCall |
RelOptUtil.collapseExpandedIsNotDistinctFromExpr(RexCall call,
RexBuilder rexBuilder)
|
private void |
RexImplicationChecker.InputUsageFinder.updateBinaryOpUsage(RexCall call) |
private void |
RexImplicationChecker.InputUsageFinder.updateUnaryOpUsage(RexCall call) |
Void |
RexImplicationChecker.InputUsageFinder.visitCall(RexCall call) |
Void |
RelOptUtil.InputFinder.visitCall(RexCall call) |
| Modifier and Type | Class and Description |
|---|---|
static class |
Match.RexMRAggCall
Aggregate calls in match recognize.
|
static class |
Window.RexWinAggCall
A call to a windowed aggregate function.
|
| Modifier and Type | Method and Description |
|---|---|
RexCall |
Window.RexWinAggCall.clone(RelDataType type,
List<RexNode> operands) |
| Modifier and Type | Method and Description |
|---|---|
void |
Match.AggregateFinder.go(RexCall call) |
Object |
Match.AggregateFinder.visitCall(RexCall call) |
Object |
Match.PatternVarFinder.visitCall(RexCall call) |
| Modifier and Type | Method and Description |
|---|---|
Double |
RelMdUtil.CardOfProjExpr.visitCall(RexCall call) |
Void |
RelMdPredicates.JoinConditionBasedPredicateInference.EquivalenceFinder.visitCall(RexCall call) |
| Modifier and Type | Field and Description |
|---|---|
private Deque<RexCall> |
DateRangeRules.ExtractShuttle.calls |
| Modifier and Type | Method and Description |
|---|---|
static RexCall |
ReduceExpressionsRule.pushPredicateIntoCase(RexCall call)
Pushes predicates into a CASE.
|
| Modifier and Type | Method and Description |
|---|---|
private void |
ReduceExpressionsRule.ReducibleExprLocator.analyzeCall(RexCall call,
ReduceExpressionsRule.ReducibleExprLocator.Constancy callConstancy) |
boolean |
ReduceDecimalsRule.RexExpander.canExpand(RexCall call)
This defaults to the utility method,
RexUtil.requiresDecimalExpansion(RexNode, boolean) which checks
general guidelines on whether a rewrite should be considered at all. |
boolean |
ReduceDecimalsRule.PassThroughExpander.canExpand(RexCall call) |
boolean |
ReduceDecimalsRule.ReinterpretExpander.canExpand(RexCall call) |
protected abstract boolean |
CalcRelSplitter.RelType.canImplement(RexCall call) |
private boolean |
ReduceDecimalsRule.ReinterpretExpander.canSimplify(RexCall outer,
RexCall inner,
RexNode value)
Detect, in a generic, but strict way, whether it is possible to
simplify a reinterpret cast.
|
abstract RexNode |
ReduceDecimalsRule.RexExpander.expand(RexCall call)
Rewrites an expression containing decimals.
|
RexNode |
ReduceDecimalsRule.CastExpander.expand(RexCall call) |
RexNode |
ReduceDecimalsRule.BinaryArithmeticExpander.expand(RexCall call) |
RexNode |
ReduceDecimalsRule.FloorExpander.expand(RexCall call) |
RexNode |
ReduceDecimalsRule.CeilExpander.expand(RexCall call) |
RexNode |
ReduceDecimalsRule.CaseExpander.expand(RexCall call) |
RexNode |
ReduceDecimalsRule.PassThroughExpander.expand(RexCall call) |
RexNode |
ReduceDecimalsRule.CastArgAsTypeExpander.expand(RexCall call) |
RexNode |
ReduceDecimalsRule.ReinterpretExpander.expand(RexCall call) |
private RexNode |
ReduceDecimalsRule.BinaryArithmeticExpander.expandComparison(RexCall call,
List<RexNode> operands) |
private RexNode |
ReduceDecimalsRule.BinaryArithmeticExpander.expandDivide(RexCall call,
List<RexNode> operands) |
private RexNode |
ReduceDecimalsRule.BinaryArithmeticExpander.expandMod(RexCall call,
List<RexNode> operands) |
private RexNode |
ReduceDecimalsRule.BinaryArithmeticExpander.expandPlusMinus(RexCall call,
List<RexNode> operands) |
private RexNode |
ReduceDecimalsRule.BinaryArithmeticExpander.expandTimes(RexCall call,
List<RexNode> operands) |
RelDataType |
ReduceDecimalsRule.CastArgAsDoubleExpander.getArgType(RexCall call,
int ordinal) |
abstract RelDataType |
ReduceDecimalsRule.CastArgAsTypeExpander.getArgType(RexCall call,
int ordinal) |
private ReduceDecimalsRule.RexExpander |
ReduceDecimalsRule.DecimalShuttle.getExpander(RexCall call)
Returns a
ReduceDecimalsRule.RexExpander for a call |
ReduceDecimalsRule.RexExpander |
ReduceDecimalsRule.ExpanderMap.getExpander(RexCall call) |
static RexCall |
ReduceExpressionsRule.pushPredicateIntoCase(RexCall call)
Pushes predicates into a CASE.
|
private void |
ReduceExpressionsRule.ReducibleExprLocator.reduceCasts(RexCall outerCast) |
private RexNode |
ReduceDecimalsRule.DecimalShuttle.rewriteCall(RexCall call)
Rewrites a call, if required, or returns the original call
|
protected static RexNode |
ReduceExpressionsRule.substitute(RexCall call,
int ordinal,
RexNode node)
Converts op(arg0, ..., argOrdinal, ..., argN) to op(arg0,..., node, ..., argN).
|
RexNode |
ReduceDecimalsRule.DecimalShuttle.visitCall(RexCall call)
Rewrites a call in place, from bottom up, as follows:
visit operands
visit call node
rewrite call
visit the rewritten call
|
Object |
DateRangeRules.ExtractFinder.visitCall(RexCall call) |
RexNode |
DateRangeRules.ExtractShuttle.visitCall(RexCall call) |
RexNode |
FilterRemoveIsNotDistinctFromRule.RemoveIsNotDistinctFromRexShuttle.visitCall(RexCall call) |
RexNode |
ReduceExpressionsRule.RexReplacer.visitCall(RexCall call) |
Void |
ReduceExpressionsRule.ReducibleExprLocator.visitCall(RexCall call) |
RexNode |
ReduceExpressionsRule.CaseShuttle.visitCall(RexCall call) |
Void |
CalcRelSplitter.ImplementTester.visitCall(RexCall call) |
Void |
PushProjector.InputSpecialOpFinder.visitCall(RexCall call) |
RexNode |
PushProjector.RefAndExprConverter.visitCall(RexCall call) |
| Modifier and Type | Class and Description |
|---|---|
class |
RexOver
Call to an aggregate function over a window.
|
class |
RexSubQuery
Scalar expression that represents an IN, EXISTS or scalar sub-query.
|
| Modifier and Type | Method and Description |
|---|---|
RexCall |
RexOver.clone(RelDataType type,
List<RexNode> operands) |
RexCall |
RexCall.clone(RelDataType type,
List<RexNode> operands)
Creates a new call to the same operator with different operands.
|
static RexCall |
RexMultisetUtil.findFirstMultiset(RexNode node,
boolean deep)
Returns a reference to the first found multiset call or null if none was
found
|
static RexCall |
RexUtil.findOperatorCall(SqlOperator operator,
RexNode node)
Returns whether a given node contains a RexCall with a specified operator
|
| Modifier and Type | Method and Description |
|---|---|
static boolean |
RexUtil.canReinterpretOverflow(RexCall call) |
SqlNode |
RexToSqlNodeConverterImpl.convertCall(RexCall call) |
SqlNode |
RexToSqlNodeConverter.convertCall(RexCall call)
|
SqlNode |
RexSqlStandardConvertletTable.convertCall(RexToSqlNodeConverter converter,
RexCall call)
Converts a call to an operator into a
SqlCall to the same
operator. |
SqlNode |
RexSqlStandardConvertletTable.EquivConvertlet.convertCall(RexToSqlNodeConverter converter,
RexCall call) |
SqlNode |
RexSqlConvertlet.convertCall(RexToSqlNodeConverter converter,
RexCall call)
|
static RexCallBinding |
RexCallBinding.create(RelDataTypeFactory typeFactory,
RexCall call,
List<RelCollation> inputCollations)
Creates a binding of the appropriate type.
|
RexSqlConvertlet |
RexSqlReflectiveConvertletTable.get(RexCall call) |
RexSqlConvertlet |
RexSqlConvertletTable.get(RexCall call)
Returns the convertlet applicable to a given expression.
|
static RexNode |
RexUtil.invert(RexBuilder rexBuilder,
RexCall call) |
static boolean |
RexUtil.isCasePredicate(RexCall call,
int i)
Returns whether a given operand of a CASE expression is a predicate.
|
static boolean |
RexMultisetUtil.isMultisetCast(RexCall call)
Returns true if
call is a call to CAST and the to/from
cast types are of multiset types. |
static RexNode |
RexUtil.negate(RexBuilder rexBuilder,
RexCall call) |
static RexNode |
RexUtil.simplifyAnd(RexBuilder rexBuilder,
RexCall e,
boolean unknownAsFalse)
Deprecated.
|
RexNode |
RexSimplify.simplifyAnd(RexCall e) |
private RexNode |
RexSimplify.simplifyCase(RexCall call) |
private RexNode |
RexSimplify.simplifyCast(RexCall e) |
private RexNode |
RexSimplify.simplifyCeilFloor(RexCall e)
Tries to simplify CEIL/FLOOR function on top of CEIL/FLOOR.
|
private RexNode |
RexSimplify.simplifyComparison(RexCall e) |
private <C extends Comparable<C>> |
RexSimplify.simplifyComparison(RexCall e,
Class<C> clazz) |
private RexNode |
RexSimplify.simplifyIs(RexCall call) |
private RexNode |
RexSimplify.simplifyNot(RexCall call) |
static RexNode |
RexUtil.simplifyOr(RexBuilder rexBuilder,
RexCall call)
Deprecated.
|
RexNode |
RexSimplify.simplifyOr(RexCall call)
Simplifies OR(x, x) into x, and similar.
|
RexNode |
RexPermuteInputsShuttle.visitCall(RexCall call) |
RexNode |
RexCopier.visitCall(RexCall call) |
R |
RexVisitor.visitCall(RexCall call) |
Boolean |
RexUtil.ConstantFinder.visitCall(RexCall call) |
RexNode |
RexUtil.ExpressionNormalizer.visitCall(RexCall call) |
Void |
RexUtil.FieldAccessFinder.visitCall(RexCall call) |
RexNode |
RexUtil.ExprSimplifier.visitCall(RexCall call) |
R |
RexVisitorImpl.visitCall(RexCall call) |
Boolean |
RexChecker.visitCall(RexCall call) |
Void |
RexMultisetUtil.RexCallMultisetOperatorCounter.visitCall(RexCall call) |
RexNode |
RexShuttle.visitCall(RexCall call) |
RexNode |
RexProgramBuilder.RegisterShuttle.visitCall(RexCall call) |
RexNode |
RexProgram.Marshaller.visitCall(RexCall call) |
R |
RexBiVisitor.visitCall(RexCall call,
P arg) |
RelOptUtil.Logic |
LogicVisitor.visitCall(RexCall call,
RelOptUtil.Logic logic) |
| Modifier and Type | Method and Description |
|---|---|
RexNode |
RelDecorrelator.RemoveCorrelationRexShuttle.visitCall(RexCall call) |
RexNode |
RelStructuredTypeFlattener.RewriteRexShuttle.visitCall(RexCall rexCall) |
RexNode |
SqlToRelConverter.HistogramShuttle.visitCall(RexCall call) |
Copyright © 2012–2018 The Apache Software Foundation. All rights reserved.