Package | Description |
---|---|
org.apache.calcite.plan |
Defines interfaces for constructing rule-based optimizers of
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 | Field and Description |
---|---|
(package private) java.util.Map<RexInputRef,RexImplicationChecker.InputRefUsage<SqlOperator,RexNode>> |
RexImplicationChecker.InputUsageFinder.usageMap |
Modifier and Type | Method and Description |
---|---|
private RexImplicationChecker.InputRefUsage<SqlOperator,RexNode> |
RexImplicationChecker.InputUsageFinder.getUsageMap(RexInputRef rex) |
boolean |
Strong.isNull(RexInputRef ref)
Returns whether a given input is definitely null.
|
private void |
RexImplicationChecker.InputUsageFinder.updateUsage(SqlOperator op,
RexInputRef inputRef,
RexNode literal) |
RexNode |
RelOptUtil.InputReferencedVisitor.visitInputRef(RexInputRef inputRef) |
java.lang.Void |
RelOptUtil.InputFinder.visitInputRef(RexInputRef inputRef) |
RexNode |
RelOptUtil.RexInputConverter.visitInputRef(RexInputRef var) |
java.lang.Void |
RexImplicationChecker.InputUsageFinder.visitInputRef(RexInputRef inputRef) |
Modifier and Type | Method and Description |
---|---|
static DataContext |
VisitorDataContext.of(RelDataType rowType,
java.util.List<Pair<RexInputRef,RexNode>> usageList) |
static RexNode |
RelOptUtil.splitCorrelatedFilterCondition(LogicalFilter filter,
java.util.List<RexInputRef> joinKeys,
java.util.List<RexNode> correlatedJoinKeys)
Deprecated.
|
private static void |
RelOptUtil.splitCorrelatedFilterCondition(LogicalFilter filter,
RexNode condition,
java.util.List<RexInputRef> joinKeys,
java.util.List<RexNode> correlatedJoinKeys,
java.util.List<RexNode> nonEquiList) |
Modifier and Type | Field and Description |
---|---|
private java.util.Map<RexInputRef,RexNode> |
RelMdExpressionLineage.RexReplacer.replacementValues |
Modifier and Type | Method and Description |
---|---|
RexNode |
RelMdExpressionLineage.RexReplacer.visitInputRef(RexInputRef inputRef) |
java.lang.Double |
RelMdUtil.CardOfProjExpr.visitInputRef(RexInputRef var) |
Modifier and Type | Method and Description |
---|---|
static boolean |
RelMdUtil.areColumnsDefinitelyUnique(RelMetadataQuery mq,
RelNode rel,
java.util.List<RexInputRef> columnRefs) |
static boolean |
RelMdUtil.areColumnsDefinitelyUniqueWhenNullsFiltered(RelMetadataQuery mq,
RelNode rel,
java.util.List<RexInputRef> columnRefs) |
static java.lang.Boolean |
RelMdUtil.areColumnsUnique(RelMetadataQuery mq,
RelNode rel,
java.util.List<RexInputRef> columnRefs) |
static java.lang.Boolean |
RelMdUtil.areColumnsUniqueWhenNullsFiltered(RelMetadataQuery mq,
RelNode rel,
java.util.List<RexInputRef> columnRefs) |
private static java.util.Set<RexNode> |
RelMdExpressionLineage.createAllPossibleExpressions(RexBuilder rexBuilder,
RexNode expr,
ImmutableBitSet predFieldsUsed,
java.util.Map<RexInputRef,java.util.Set<RexNode>> mapping,
java.util.Map<RexInputRef,RexNode> singleMapping) |
private static java.util.Set<RexNode> |
RelMdExpressionLineage.createAllPossibleExpressions(RexBuilder rexBuilder,
RexNode expr,
ImmutableBitSet predFieldsUsed,
java.util.Map<RexInputRef,java.util.Set<RexNode>> mapping,
java.util.Map<RexInputRef,RexNode> singleMapping) |
protected static java.util.Set<RexNode> |
RelMdExpressionLineage.createAllPossibleExpressions(RexBuilder rexBuilder,
RexNode expr,
java.util.Map<RexInputRef,java.util.Set<RexNode>> mapping)
Given an expression, it will create all equivalent expressions resulting
from replacing all possible combinations of references in the mapping by
the corresponding expressions.
|
private static void |
RelMdExpressionLineage.createExpressions(RexBuilder rexBuilder,
RexNode expr,
ImmutableBitSet predFieldsUsed,
java.util.Map<RexInputRef,java.util.Set<RexNode>> mapping,
java.util.Map<RexInputRef,RexNode> singleMapping,
java.util.Set<RexNode> result) |
private static void |
RelMdExpressionLineage.createExpressions(RexBuilder rexBuilder,
RexNode expr,
ImmutableBitSet predFieldsUsed,
java.util.Map<RexInputRef,java.util.Set<RexNode>> mapping,
java.util.Map<RexInputRef,RexNode> singleMapping,
java.util.Set<RexNode> result) |
Constructor and Description |
---|
RexReplacer(java.util.Map<RexInputRef,RexNode> replacementValues) |
Modifier and Type | Method and Description |
---|---|
private RexInputRef |
SubQueryRemoveRule.field(RelBuilder builder,
int inputCount,
int offset)
Returns a reference to a particular field, by offset, across several
inputs on a
RelBuilder 's stack. |
Modifier and Type | Method and Description |
---|---|
java.lang.Void |
PushProjector.InputSpecialOpFinder.visitInputRef(RexInputRef inputRef) |
RexNode |
ReduceExpressionsRule.RexReplacer.visitInputRef(RexInputRef inputRef) |
java.lang.Void |
ReduceExpressionsRule.ReducibleExprLocator.visitInputRef(RexInputRef inputRef) |
java.lang.Void |
JoinToMultiJoinRule.InputReferenceCounter.visitInputRef(RexInputRef inputRef) |
RexNode |
ValuesReduceRule.MyRexShuttle.visitInputRef(RexInputRef inputRef) |
RexNode |
CalcRelSplitter.InputToCommonExprConverter.visitInputRef(RexInputRef input) |
Modifier and Type | Method and Description |
---|---|
private void |
AggregateExpandDistinctAggregatesRule.doRewrite(RelBuilder relBuilder,
Aggregate aggregate,
int n,
java.util.List<java.lang.Integer> argList,
int filterArg,
java.util.List<RexInputRef> refs)
Converts all distinct aggregate calls to a given set of arguments.
|
Modifier and Type | Class and Description |
---|---|
class |
RexPatternFieldRef
Variable which references a field of an input relational expression
|
class |
RexTableInputRef
Variable which references a column of a table occurrence in a relational plan.
|
Modifier and Type | Method and Description |
---|---|
RexInputRef |
RexBuilder.makeInputRef(RelDataType type,
int i)
Creates a reference to a given field of the input record.
|
RexInputRef |
RexBuilder.makeInputRef(RelNode input,
int i)
Creates a reference to a given field of the input relational expression.
|
static RexInputRef |
RexInputRef.of(int index,
java.util.List<RelDataTypeField> fields)
Creates a reference to a given field in a list of fields.
|
static RexInputRef |
RexInputRef.of(int index,
RelDataType rowType)
Creates a reference to a given field in a row type.
|
Modifier and Type | Method and Description |
---|---|
SqlNode |
RexToSqlNodeConverterImpl.convertInputRef(RexInputRef ref) |
SqlNode |
RexToSqlNodeConverter.convertInputRef(RexInputRef ref)
Converts a
RexInputRef to a SqlIdentifier . |
static RexTableInputRef |
RexTableInputRef.of(RexTableInputRef.RelTableRef tableRef,
RexInputRef ref) |
static RexPatternFieldRef |
RexPatternFieldRef.of(java.lang.String alpha,
RexInputRef ref) |
java.lang.Boolean |
RexUtil.ConstantFinder.visitInputRef(RexInputRef inputRef) |
RexNode |
RexUtil.ExpressionNormalizer.visitInputRef(RexInputRef inputRef) |
java.lang.Void |
RexUtil.ForwardRefFinder.visitInputRef(RexInputRef inputRef) |
RexNode |
RexUtil.RexShiftShuttle.visitInputRef(RexInputRef input) |
RexNode |
RexUtil.FixNullabilityShuttle.visitInputRef(RexInputRef ref) |
java.lang.Comparable |
RexInterpreter.visitInputRef(RexInputRef inputRef) |
RexNode |
RexProgramBuilder.RegisterInputShuttle.visitInputRef(RexInputRef input) |
RexNode |
RexProgramBuilder.RegisterOutputShuttle.visitInputRef(RexInputRef input) |
R |
RexVisitorImpl.visitInputRef(RexInputRef inputRef) |
java.lang.Boolean |
RexSimplify.SafeRexVisitor.visitInputRef(RexInputRef inputRef) |
java.lang.Boolean |
RexChecker.visitInputRef(RexInputRef ref) |
java.lang.Void |
RexAnalyzer.VariableCollector.visitInputRef(RexInputRef inputRef) |
RexNode |
RexCopier.visitInputRef(RexInputRef inputRef) |
R |
RexVisitor.visitInputRef(RexInputRef inputRef) |
RexNode |
RexPermuteInputsShuttle.visitInputRef(RexInputRef local) |
RexNode |
RexProgram.Marshaller.visitInputRef(RexInputRef inputRef) |
RexNode |
RexShuttle.visitInputRef(RexInputRef inputRef) |
R |
RexBiVisitor.visitInputRef(RexInputRef inputRef,
P arg) |
RelOptUtil.Logic |
LogicVisitor.visitInputRef(RexInputRef inputRef,
RelOptUtil.Logic arg) |
Modifier and Type | Field and Description |
---|---|
(package private) RexInputRef |
RelDecorrelator.RemoveCorrelationRexShuttle.nullIndicator |
Modifier and Type | Method and Description |
---|---|
private static RexInputRef |
RelDecorrelator.getNewForOldInputRef(RelNode currentRel,
java.util.Map<RelNode,RelDecorrelator.Frame> map,
RexInputRef oldInputRef) |
Modifier and Type | Method and Description |
---|---|
protected RexNode |
SqlToRelConverter.adjustInputRef(SqlToRelConverter.Blackboard bb,
RexInputRef inputRef)
Adjusts the type of a reference to an input field to account for nulls
introduced by outer joins; and adjusts the offset to match the physical
implementation.
|
private RexNode |
RelDecorrelator.RemoveCorrelationRexShuttle.createCaseExpression(RexInputRef nullInputRef,
RexLiteral lit,
RexNode rexNode) |
private static RexInputRef |
RelDecorrelator.getNewForOldInputRef(RelNode currentRel,
java.util.Map<RelNode,RelDecorrelator.Frame> map,
RexInputRef oldInputRef) |
(package private) RelDataTypeField |
SqlToRelConverter.Blackboard.getRootField(RexInputRef inputRef) |
protected RexNode |
RelDecorrelator.removeCorrelationExpr(RexNode exp,
boolean projectPulledAboveLeftCorrelator,
RexInputRef nullIndicator) |
RexNode |
RelStructuredTypeFlattener.RewriteRexShuttle.visitInputRef(RexInputRef input) |
RexNode |
RelDecorrelator.DecorrelateRexShuttle.visitInputRef(RexInputRef inputRef) |
RexNode |
RelDecorrelator.RemoveCorrelationRexShuttle.visitInputRef(RexInputRef inputRef) |
RexNode |
SqlToRelConverter.RexAccessShuttle.visitInputRef(RexInputRef input) |
Constructor and Description |
---|
RemoveCorrelationRexShuttle(RexBuilder rexBuilder,
boolean projectPulledAboveLeftCorrelator,
RexInputRef nullIndicator,
java.util.Set<java.lang.Integer> isCount) |
Modifier and Type | Method and Description |
---|---|
RexInputRef |
RelBuilder.field(int fieldOrdinal)
Creates a reference to an input field by ordinal.
|
RexInputRef |
RelBuilder.field(int inputCount,
int inputOrdinal,
int fieldOrdinal)
Creates a reference to a field of a given input relational expression
by ordinal.
|
RexInputRef |
RelBuilder.field(int inputCount,
int inputOrdinal,
java.lang.String fieldName)
Creates a reference to a field of given input relational expression
by name.
|
RexInputRef |
RelBuilder.field(java.lang.String fieldName)
Creates a reference to a field by name.
|
Modifier and Type | Method and Description |
---|---|
RexNode |
RelBuilder.Shifter.visitInputRef(RexInputRef inputRef) |
Copyright © 2012–2019 The Apache Software Foundation. All rights reserved.