public abstract class ConverterImpl extends SingleRel implements Converter
Converter.RelNode.Context| Modifier and Type | Field and Description |
|---|---|
protected RelTraitSet |
inTraits |
protected @Nullable RelTraitDef |
traitDef |
digest, id, rowType, traitSet| Modifier | Constructor and Description |
|---|---|
protected |
ConverterImpl(RelOptCluster cluster,
@Nullable RelTraitDef traitDef,
RelTraitSet traits,
RelNode child)
Creates a ConverterImpl.
|
| Modifier and Type | Method and Description |
|---|---|
protected Error |
cannotImplement()
Deprecated.
|
@Nullable RelOptCost |
computeSelfCost(RelOptPlanner planner,
RelMetadataQuery mq)
Returns the cost of this plan (not including children).
|
RelTraitSet |
getInputTraits()
Returns the trait of the input relational expression.
|
@Nullable RelTraitDef |
getTraitDef()
Returns the definition of trait which this converter works on.
|
childrenAccept, deriveRowType, estimateRowCount, explainTerms, getInput, getInputs, replaceInputaccept, accept, collectVariablesSet, collectVariablesUsed, copy, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getRelDigest, getRelTypeName, getRowType, getTable, getTraitSet, getVariablesSet, hashCode, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, sole, toStringclone, finalize, getClass, notify, notifyAll, wait, wait, waitaccept, 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, replaceInputgetCluster, getDescription, getId, getTraitSetprotected RelTraitSet inTraits
protected final @Nullable RelTraitDef traitDef
protected ConverterImpl(RelOptCluster cluster, @Nullable RelTraitDef traitDef, RelTraitSet traits, RelNode child)
cluster - planner's clustertraitDef - the RelTraitDef this converter convertstraits - the output traits of this converterchild - child rel (provides input traits)public @Nullable RelOptCost computeSelfCost(RelOptPlanner planner, RelMetadataQuery mq)
RelNodeNOTE 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.
computeSelfCost in interface RelNodecomputeSelfCost in class AbstractRelNodeplanner - Planner for cost calculationmq - Metadata query@Deprecated protected Error cannotImplement()
public RelTraitSet getInputTraits()
ConvertergetInputTraits in interface Converterpublic @Nullable RelTraitDef getTraitDef()
ConverterThe input relational expression (matched by the rule) must possess
this trait and have the value given by Converter.getInputTraits(), and the
traits of the output of this converter given by RelOptNode.getTraitSet() will
have one trait altered and the other orthogonal traits will be the same.
getTraitDef in interface ConverterCopyright © 2012-2022 Apache Software Foundation. All Rights Reserved.