Package com.twilio.kudu.sql.rel
Class KuduProjectRel
java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.SingleRel
org.apache.calcite.rel.core.Project
com.twilio.kudu.sql.rel.KuduProjectRel
- All Implemented Interfaces:
KuduRelNode
,Cloneable
,org.apache.calcite.plan.RelOptNode
,org.apache.calcite.rel.hint.Hintable
,org.apache.calcite.rel.RelNode
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
static class
Used to transform projections of aLogicalProject
to use the output of aKuduProjectRel
Nested classes/interfaces inherited from class org.apache.calcite.rel.core.Project
org.apache.calcite.rel.core.Project.Flags
Nested classes/interfaces inherited from interface com.twilio.kudu.sql.KuduRelNode
KuduRelNode.Implementor
Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode
org.apache.calcite.rel.RelNode.Context
-
Field Summary
Fields inherited from class org.apache.calcite.rel.core.Project
exps, hints, variablesSet
Fields inherited from class org.apache.calcite.rel.SingleRel
input
Fields inherited from class org.apache.calcite.rel.AbstractRelNode
digest, id, rowType, traitSet
Fields inherited from interface com.twilio.kudu.sql.KuduRelNode
CONVENTION
-
Constructor Summary
ConstructorDescriptionKuduProjectRel
(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode input, List<? extends org.apache.calcite.rex.RexNode> projects, org.apache.calcite.rel.type.RelDataType rowType) -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.calcite.plan.RelOptCost
computeSelfCost
(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq) org.apache.calcite.rel.core.Project
copy
(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode input, List<org.apache.calcite.rex.RexNode> projects, org.apache.calcite.rel.type.RelDataType rowType) void
implement
(KuduRelNode.Implementor implementor) EachKuduRelNode
implementation will accept theKuduRelNode.Implementor
and manipulate it.Methods inherited from class org.apache.calcite.rel.core.Project
accept, containsOver, copy, copy, deepEquals0, deepHashCode0, explainTerms, getAliasedProjects, getFlags, getHints, getMapping, getMapping, getNamedProjects, getPartialMapping, getPermutation, getPermutation, getProjects, getVariablesSet, isBoxed, isMapping, isValid
Methods inherited from class org.apache.calcite.rel.SingleRel
childrenAccept, deriveRowType, estimateRowCount, getInput, getInputs, replaceInput
Methods inherited from class org.apache.calcite.rel.AbstractRelNode
accept, collectVariablesSet, collectVariablesUsed, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getRelDigest, getRelTypeName, getRowType, getTable, getTraitSet, hashCode, isEnforcer, metadata, onRegister, recomputeDigest, register, 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
-
Constructor Details
-
KuduProjectRel
public KuduProjectRel(org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode input, List<? extends org.apache.calcite.rex.RexNode> projects, org.apache.calcite.rel.type.RelDataType rowType)
-
-
Method Details
-
copy
public org.apache.calcite.rel.core.Project copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode input, List<org.apache.calcite.rex.RexNode> projects, org.apache.calcite.rel.type.RelDataType rowType) - Specified by:
copy
in classorg.apache.calcite.rel.core.Project
-
computeSelfCost
public org.apache.calcite.plan.RelOptCost computeSelfCost(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq) - Specified by:
computeSelfCost
in interfaceorg.apache.calcite.rel.RelNode
- Overrides:
computeSelfCost
in classorg.apache.calcite.rel.core.Project
-
implement
Description copied from interface:KuduRelNode
EachKuduRelNode
implementation will accept theKuduRelNode.Implementor
and manipulate it. TheImplementor
will then be used by theKuduToEnumerableConverter
to create aBlocks
that will be used to generate Byte code for the actual query.- Specified by:
implement
in interfaceKuduRelNode
- Parameters:
implementor
- mutable implementator to store information on for the Kudu RPCs
-