Class EnumerableInterpretable
- java.lang.Object
-
- org.apache.calcite.rel.AbstractRelNode
-
- org.apache.calcite.rel.SingleRel
-
- org.apache.calcite.rel.convert.ConverterImpl
-
- org.apache.calcite.adapter.enumerable.EnumerableInterpretable
-
- All Implemented Interfaces:
java.lang.Cloneable
,InterpretableRel
,RelOptNode
,Converter
,RelNode
public class EnumerableInterpretable extends ConverterImpl implements InterpretableRel
Relational expression that converts an enumerable input to interpretable calling convention.- See Also:
EnumerableConvention
,BindableConvention
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static class
EnumerableInterpretable.EnumerableNode
Interpreter node that reads from anEnumerable
.-
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
-
Fields inherited from class org.apache.calcite.rel.convert.ConverterImpl
inTraits, traitDef
-
Fields inherited from class org.apache.calcite.rel.AbstractRelNode
digest, id, rowType, traitSet
-
-
Constructor Summary
Constructors Modifier Constructor Description protected
EnumerableInterpretable(RelOptCluster cluster, RelNode input)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description (package private) static ArrayBindable
box(Bindable bindable)
Converts a bindable over scalar values into an array bindable, with each row as an array of 1 element.EnumerableInterpretable
copy(RelTraitSet traitSet, java.util.List<RelNode> inputs)
Creates a copy of this relational expression, perhaps changing traits and inputs.(package private) static ArrayBindable
getArrayBindable(ClassDeclaration expr, java.lang.String s, int fieldCount)
(package private) static Bindable
getBindable(ClassDeclaration expr, java.lang.String s, int fieldCount)
Node
implement(InterpretableRel.InterpreterImplementor implementor)
Creates an interpreter node to implement this relational expression.static Bindable
toBindable(java.util.Map<java.lang.String,java.lang.Object> parameters, CalcitePrepare.SparkHandler spark, EnumerableRel rel, EnumerableRel.Prefer prefer)
-
Methods inherited from class org.apache.calcite.rel.convert.ConverterImpl
cannotImplement, computeSelfCost, getInputTraits, getTraitDef
-
Methods inherited from class org.apache.calcite.rel.SingleRel
childrenAccept, deriveRowType, estimateRowCount, explainTerms, getInput, getInputs, replaceInput
-
Methods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, accept, collectVariablesSet, collectVariablesUsed, computeDigest, computeSelfCost, explain, getChildExps, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getQuery, getRelTypeName, getRows, getRowType, getTable, getTraitSet, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, isValid, metadata, onRegister, recomputeDigest, register, sole, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.calcite.rel.RelNode
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
-
Methods inherited from interface org.apache.calcite.plan.RelOptNode
getCluster, getDescription, getDigest, getId, getTraitSet
-
-
-
-
Constructor Detail
-
EnumerableInterpretable
protected EnumerableInterpretable(RelOptCluster cluster, RelNode input)
-
-
Method Detail
-
copy
public EnumerableInterpretable copy(RelTraitSet traitSet, java.util.List<RelNode> inputs)
Description copied from interface:RelNode
Creates a copy of this relational expression, perhaps changing traits and inputs.Sub-classes with other important attributes are encouraged to create variants of this method with more parameters.
- Specified by:
copy
in interfaceRelNode
- Overrides:
copy
in classAbstractRelNode
- Parameters:
traitSet
- Trait setinputs
- Inputs- Returns:
- Copy of this relational expression, substituting traits and inputs
-
implement
public Node implement(InterpretableRel.InterpreterImplementor implementor)
Description copied from interface:InterpretableRel
Creates an interpreter node to implement this relational expression.- Specified by:
implement
in interfaceInterpretableRel
-
toBindable
public static Bindable toBindable(java.util.Map<java.lang.String,java.lang.Object> parameters, CalcitePrepare.SparkHandler spark, EnumerableRel rel, EnumerableRel.Prefer prefer)
-
getArrayBindable
static ArrayBindable getArrayBindable(ClassDeclaration expr, java.lang.String s, int fieldCount) throws org.codehaus.commons.compiler.CompileException, java.io.IOException
- Throws:
org.codehaus.commons.compiler.CompileException
java.io.IOException
-
getBindable
static Bindable getBindable(ClassDeclaration expr, java.lang.String s, int fieldCount) throws org.codehaus.commons.compiler.CompileException, java.io.IOException
- Throws:
org.codehaus.commons.compiler.CompileException
java.io.IOException
-
box
static ArrayBindable box(Bindable bindable)
Converts a bindable over scalar values into an array bindable, with each row as an array of 1 element.
-
-