public abstract class ConverterImpl extends SingleRel implements Converter
Converter.| Modifier and Type | Field and Description |
|---|---|
protected RelTraitSet |
inTraits |
protected RelTraitDef |
traitDef |
digest, id, rowType, traitSet| Modifier | Constructor and Description |
|---|---|
protected |
ConverterImpl(RelOptCluster cluster,
RelTraitDef traitDef,
RelTraitSet traits,
RelNode child)
Creates a ConverterImpl.
|
| Modifier and Type | Method and Description |
|---|---|
protected Error |
cannotImplement() |
RelOptCost |
computeSelfCost(RelOptPlanner planner)
Returns the cost of this plan (not including children).
|
RelTraitSet |
getInputTraits()
Returns the trait of the input relational expression.
|
RelTraitDef |
getTraitDef()
Returns the definition of trait which this converter works on.
|
boolean |
isDistinct()
Returns whether the same value will not come out twice.
|
childrenAccept, deriveRowType, explainTerms, getInput, getInputs, getRows, replaceInputaccept, accept, collectVariablesSet, collectVariablesUsed, computeDigest, copy, explain, getChildExps, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getQuery, getRelTypeName, getRowType, getTable, getTraitSet, getVariablesStopped, isKey, isValid, metadata, onRegister, recomputeDigest, register, sole, toStringclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitaccept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, copy, explain, getChildExps, getCollationList, getConvention, getCorrelVariable, getExpectedInputRowType, getInput, getInputs, getQuery, getRelTypeName, getRows, getRowType, getTable, getVariablesStopped, isKey, isValid, metadata, onRegister, recomputeDigest, register, replaceInputgetCluster, getDescription, getDigest, getId, getTraitSetprotected RelTraitSet inTraits
protected final RelTraitDef traitDef
protected ConverterImpl(RelOptCluster cluster, 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 RelOptCost computeSelfCost(RelOptPlanner planner)
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 calculationprotected Error cannotImplement()
public boolean isDistinct()
RelNodefalse, derived classes should override.isDistinct in interface RelNodeisDistinct in class AbstractRelNodepublic RelTraitSet getInputTraits()
ConvertergetInputTraits in interface Converterpublic 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–2015 The Apache Software Foundation. All rights reserved.