Package org.apache.calcite.rel.logical
Class LogicalTableFunctionScan
java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.core.TableFunctionScan
org.apache.calcite.rel.logical.LogicalTableFunctionScan
- All Implemented Interfaces:
Cloneable,RelOptNode,Hintable,RelNode
Sub-class of
TableFunctionScan
not targeted at any particular engine or calling convention.-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode
RelNode.Context -
Field Summary
Fields inherited from class org.apache.calcite.rel.core.TableFunctionScan
columnMappings, hintsFields inherited from class org.apache.calcite.rel.AbstractRelNode
digest, id, rowType, traitSet -
Constructor Summary
ConstructorsConstructorDescriptionLogicalTableFunctionScan(RelOptCluster cluster, List<RelNode> inputs, RexNode rexCall, @Nullable Type elementType, RelDataType rowType, @Nullable Set<RelColumnMapping> columnMappings) Deprecated.LogicalTableFunctionScan(RelOptCluster cluster, RelTraitSet traitSet, List<RelHint> hints, List<RelNode> inputs, RexNode rexCall, @Nullable Type elementType, RelDataType rowType, @Nullable Set<RelColumnMapping> columnMappings) Creates aLogicalTableFunctionScan.LogicalTableFunctionScan(RelOptCluster cluster, RelTraitSet traitSet, List<RelNode> inputs, RexNode rexCall, @Nullable Type elementType, RelDataType rowType, @Nullable Set<RelColumnMapping> columnMappings) Creates aLogicalTableFunctionScan.LogicalTableFunctionScan(RelInput input) Creates a LogicalTableFunctionScan by parsing serialized output. -
Method Summary
Modifier and TypeMethodDescription@Nullable RelOptCostcomputeSelfCost(RelOptPlanner planner, RelMetadataQuery mq) Returns the cost of this plan (not including children).copy(RelTraitSet traitSet, List<RelNode> inputs, RexNode rexCall, @Nullable Type elementType, RelDataType rowType, @Nullable Set<RelColumnMapping> columnMappings) Copies this relational expression, substituting traits and inputs.static LogicalTableFunctionScancreate(RelOptCluster cluster, List<RelNode> inputs, RexNode rexCall, @Nullable Type elementType, RelDataType rowType, @Nullable Set<RelColumnMapping> columnMappings) Creates a LogicalTableFunctionScan.Returns a new relational expression with the specified hintshintList.Methods inherited from class org.apache.calcite.rel.core.TableFunctionScan
accept, copy, estimateRowCount, explainTerms, getCall, getColumnMappings, getElementType, getHints, getInputs, replaceInputMethods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, childrenAccept, collectVariablesSet, collectVariablesUsed, deepEquals, deepHashCode, deriveRowType, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getRelDigest, getRelTypeName, getRowType, getTable, getTraitSet, getVariablesSet, hashCode, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, sole, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.apache.calcite.rel.hint.Hintable
attachHintsMethods inherited from interface org.apache.calcite.rel.RelNode
explain, fieldIsNullable, stripped
-
Constructor Details
-
LogicalTableFunctionScan
public LogicalTableFunctionScan(RelOptCluster cluster, RelTraitSet traitSet, List<RelHint> hints, List<RelNode> inputs, RexNode rexCall, @Nullable Type elementType, RelDataType rowType, @Nullable Set<RelColumnMapping> columnMappings) Creates aLogicalTableFunctionScan.- Parameters:
cluster- Cluster that this relational expression belongs totraitSet- Trait sethints- The hints of this node.inputs- 0 or more relational inputsrexCall- Function invocation expressionelementType- Element type of the collection that will implement this tablerowType- Row type produced by functioncolumnMappings- Column mappings associated with this function
-
LogicalTableFunctionScan
public LogicalTableFunctionScan(RelOptCluster cluster, RelTraitSet traitSet, List<RelNode> inputs, RexNode rexCall, @Nullable Type elementType, RelDataType rowType, @Nullable Set<RelColumnMapping> columnMappings) Creates aLogicalTableFunctionScan.- Parameters:
cluster- Cluster that this relational expression belongs totraitSet- Trait setinputs- 0 or more relational inputsrexCall- Function invocation expressionelementType- Element type of the collection that will implement this tablerowType- Row type produced by functioncolumnMappings- Column mappings associated with this function
-
LogicalTableFunctionScan
@Deprecated public LogicalTableFunctionScan(RelOptCluster cluster, List<RelNode> inputs, RexNode rexCall, @Nullable Type elementType, RelDataType rowType, @Nullable Set<RelColumnMapping> columnMappings) Deprecated. -
LogicalTableFunctionScan
Creates a LogicalTableFunctionScan by parsing serialized output.
-
-
Method Details
-
create
public static LogicalTableFunctionScan create(RelOptCluster cluster, List<RelNode> inputs, RexNode rexCall, @Nullable Type elementType, RelDataType rowType, @Nullable Set<RelColumnMapping> columnMappings) Creates a LogicalTableFunctionScan. -
copy
public LogicalTableFunctionScan copy(RelTraitSet traitSet, List<RelNode> inputs, RexNode rexCall, @Nullable Type elementType, RelDataType rowType, @Nullable Set<RelColumnMapping> columnMappings) Description copied from class:TableFunctionScanCopies this relational expression, substituting traits and inputs.- Specified by:
copyin classTableFunctionScan- Parameters:
traitSet- Traitsinputs- 0 or more relational inputsrexCall- Function invocation expressionelementType- Element type of the collection that will implement this tablerowType- Row type produced by functioncolumnMappings- Column mappings associated with this function- Returns:
- Copy of this relational expression, substituting traits and inputs
-
computeSelfCost
Description copied from interface:RelNodeReturns the cost of this plan (not including children). The base implementation throws an error; derived classes should override.NOTE jvs 29-Mar-2006: Don't call this method directly. Instead, use
RelMetadataQuery.getNonCumulativeCost(org.apache.calcite.rel.RelNode), which gives plugins a chance to override the rel's default ideas about cost.- Specified by:
computeSelfCostin interfaceRelNode- Overrides:
computeSelfCostin classAbstractRelNode- Parameters:
planner- Planner for cost calculationmq- Metadata query- Returns:
- Cost of this plan (not including children)
-
withHints
Description copied from interface:HintableReturns a new relational expression with the specified hintshintList.This method should be overridden by every logical node that supports hint. It is only for internal use during decorrelation.
Sub-class should return a new copy of the relational expression.
The default implementation returns the relational expression directly only because not every kind of relational expression supports hints.
- Returns:
- Relational expression with set up hints
-