Package org.apache.calcite.interpreter
Class Bindables.BindableTableScan
java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.core.TableScan
org.apache.calcite.interpreter.Bindables.BindableTableScan
- All Implemented Interfaces:
Cloneable
,BindableRel
,InterpretableRel
,RelOptNode
,Hintable
,RelNode
,ArrayBindable
,Bindable<@Nullable Object[]>
,Typed
- Enclosing class:
Bindables
Scan of a table that implements
ScannableTable
and therefore can
be converted into an Enumerable
.-
Nested Class Summary
Nested classes/interfaces inherited from interface org.apache.calcite.interpreter.InterpretableRel
InterpretableRel.InterpreterImplementor
Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode
RelNode.Context
-
Field Summary
Modifier and TypeFieldDescriptionfinal com.google.common.collect.ImmutableList<RexNode>
final ImmutableIntList
Fields inherited from class org.apache.calcite.rel.AbstractRelNode
digest, id, rowType, traitSet
-
Method Summary
Modifier and TypeMethodDescriptionEnumerable<@Nullable Object[]>
bind
(DataContext dataContext) Executes this statement and returns an enumerable which will yield rows.static boolean
canHandle
(RelOptTable table) @Nullable RelOptCost
computeSelfCost
(RelOptPlanner planner, RelMetadataQuery mq) Returns the cost of this plan (not including children).static Bindables.BindableTableScan
create
(RelOptCluster cluster, RelOptTable relOptTable) Creates a BindableTableScan.static Bindables.BindableTableScan
create
(RelOptCluster cluster, RelOptTable relOptTable, List<RexNode> filters, List<Integer> projects) Creates a BindableTableScan.Describes the inputs and attributes of this relational expression.Gets the type of the element(s) that are returned in this collection.implement
(InterpretableRel.InterpreterImplementor implementor) Creates an interpreter node to implement this relational expression.Methods inherited from class org.apache.calcite.rel.core.TableScan
accept, estimateRowCount, getHints, getTable, identity, identity, project
Methods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, childrenAccept, collectVariablesSet, collectVariablesUsed, copy, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTraitSet, getVariablesSet, hashCode, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, replaceInput, sole, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.apache.calcite.rel.hint.Hintable
attachHints, withHints
Methods inherited from interface org.apache.calcite.rel.RelNode
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, copy, deepEquals, deepHashCode, estimateRowCount, explain, explain, fieldIsNullable, getConvention, getCorrelVariable, getDigest, getExpectedInputRowType, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTable, getVariablesSet, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, replaceInput, stripped
Methods inherited from interface org.apache.calcite.plan.RelOptNode
getCluster, getDescription, getId, getTraitSet
-
Field Details
-
filters
-
projects
-
-
Method Details
-
create
Creates a BindableTableScan. -
create
public static Bindables.BindableTableScan create(RelOptCluster cluster, RelOptTable relOptTable, List<RexNode> filters, List<Integer> projects) Creates a BindableTableScan. -
deriveRowType
- Overrides:
deriveRowType
in classTableScan
-
getElementType
Description copied from interface:Typed
Gets the type of the element(s) that are returned in this collection.- Specified by:
getElementType
in interfaceArrayBindable
- Specified by:
getElementType
in interfaceTyped
-
explainTerms
Description copied from class:AbstractRelNode
Describes the inputs and attributes of this relational expression. Each node should callsuper.explainTerms
, then call theRelWriter.input(String, RelNode)
andRelWriter.item(String, Object)
methods for each input and attribute.- Overrides:
explainTerms
in classTableScan
- Parameters:
pw
- Plan writer- Returns:
- Plan writer for fluent-explain pattern
-
computeSelfCost
Description copied from interface:RelNode
Returns 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:
computeSelfCost
in interfaceRelNode
- Overrides:
computeSelfCost
in classTableScan
- Parameters:
planner
- Planner for cost calculationmq
- Metadata query- Returns:
- Cost of this plan (not including children)
-
canHandle
-
bind
Description copied from interface:Bindable
Executes this statement and returns an enumerable which will yield rows. Theenvironment
parameter provides the values in the root of the environment (usually schemas). -
implement
Description copied from interface:InterpretableRel
Creates an interpreter node to implement this relational expression.- Specified by:
implement
in interfaceInterpretableRel
-