public class EnumerableTableScan extends TableScan implements EnumerableRel
TableScan
in
enumerable calling convention
.EnumerableRel.Prefer, EnumerableRel.Result
RelNode.Context
Modifier and Type | Field and Description |
---|---|
private java.lang.Class |
elementType |
digest, id, rowType, traitSet
FILTER_FACTORY, PROJECT_FACTORY
Constructor and Description |
---|
EnumerableTableScan(RelOptCluster cluster,
RelTraitSet traitSet,
RelOptTable table,
java.lang.Class elementType)
Creates an EnumerableTableScan.
|
Modifier and Type | Method and Description |
---|---|
static boolean |
canHandle(Table table)
Returns whether EnumerableTableScan can generate code to handle a
particular variant of the Table SPI.
|
RelNode |
copy(RelTraitSet traitSet,
java.util.List<RelNode> inputs)
Creates a copy of this relational expression, perhaps changing traits and
inputs.
|
static EnumerableTableScan |
create(RelOptCluster cluster,
RelOptTable relOptTable)
Creates an EnumerableTableScan.
|
static java.lang.Class |
deduceElementType(Table table) |
static JavaRowFormat |
deduceFormat(RelOptTable table) |
boolean |
equals(java.lang.Object obj) |
private Expression |
fieldExpression(ParameterExpression row_,
int i,
PhysType physType,
JavaRowFormat format) |
private JavaRowFormat |
format() |
private Expression |
getExpression(PhysType physType) |
private boolean |
hasCollectionField(RelDataType rowType) |
int |
hashCode() |
EnumerableRel.Result |
implement(EnumerableRelImplementor implementor,
EnumerableRel.Prefer pref)
Creates a plan for this expression according to a calling convention.
|
private Expression |
toEnumerable(Expression expression) |
private Expression |
toRows(PhysType physType,
Expression expression) |
accept, computeSelfCost, deriveRowType, estimateRowCount, explainTerms, getCollationList, getTable, identity, identity, project
accept, childrenAccept, collectVariablesSet, collectVariablesUsed, computeDigest, computeSelfCost, explain, getChildExps, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getInputs, getQuery, getRelTypeName, getRows, getRowType, getTraitSet, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, isValid, metadata, onRegister, recomputeDigest, register, replaceInput, sole, toString
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, computeSelfCost, computeSelfCost, estimateRowCount, explain, getChildExps, getCollationList, getConvention, getCorrelVariable, getExpectedInputRowType, getInput, getInputs, getQuery, getRelTypeName, getRows, getRowType, getTable, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, isValid, metadata, onRegister, recomputeDigest, register, replaceInput
getCluster, getDescription, getDigest, getId, getTraitSet
public EnumerableTableScan(RelOptCluster cluster, RelTraitSet traitSet, RelOptTable table, java.lang.Class elementType)
Use create(org.apache.calcite.plan.RelOptCluster, org.apache.calcite.plan.RelOptTable)
unless you know what you are doing.
public static EnumerableTableScan create(RelOptCluster cluster, RelOptTable relOptTable)
public boolean equals(java.lang.Object obj)
equals
in class java.lang.Object
public int hashCode()
hashCode
in class java.lang.Object
public static boolean canHandle(Table table)
public static java.lang.Class deduceElementType(Table table)
public static JavaRowFormat deduceFormat(RelOptTable table)
private Expression getExpression(PhysType physType)
private Expression toEnumerable(Expression expression)
private Expression toRows(PhysType physType, Expression expression)
private Expression fieldExpression(ParameterExpression row_, int i, PhysType physType, JavaRowFormat format)
private JavaRowFormat format()
private boolean hasCollectionField(RelDataType rowType)
public RelNode copy(RelTraitSet traitSet, java.util.List<RelNode> inputs)
RelNode
Sub-classes with other important attributes are encouraged to create variants of this method with more parameters.
copy
in interface RelNode
copy
in class AbstractRelNode
traitSet
- Trait setinputs
- Inputspublic EnumerableRel.Result implement(EnumerableRelImplementor implementor, EnumerableRel.Prefer pref)
EnumerableRel
implement
in interface EnumerableRel
implementor
- Implementorpref
- Preferred representation for rows in result expressionCopyright © 2012–2019 The Apache Software Foundation. All rights reserved.