org.eigenbase.relopt.volcano
Class VolcanoPlannerTraitTest.AltTraitConverter

java.lang.Object
  extended by org.eigenbase.rel.AbstractRelNode
      extended by org.eigenbase.rel.SingleRel
          extended by org.eigenbase.rel.convert.ConverterRelImpl
              extended by org.eigenbase.relopt.volcano.VolcanoPlannerTraitTest.AltTraitConverter
All Implemented Interfaces:
Cloneable, ConverterRel, RelNode
Enclosing class:
VolcanoPlannerTraitTest

private static class VolcanoPlannerTraitTest.AltTraitConverter
extends ConverterRelImpl


Field Summary
private  RelTrait toTrait
           
 
Fields inherited from class org.eigenbase.rel.convert.ConverterRelImpl
inTraits, traitDef
 
Fields inherited from class org.eigenbase.rel.AbstractRelNode
digest, id, rowType, traits
 
Fields inherited from interface org.eigenbase.rel.RelNode
emptyArray
 
Constructor Summary
private VolcanoPlannerTraitTest.AltTraitConverter(RelOptCluster cluster, RelNode child, RelTrait toTrait)
           
 
Method Summary
 VolcanoPlannerTraitTest.AltTraitConverter clone()
          Clones this RelNode.
 
Methods inherited from class org.eigenbase.rel.convert.ConverterRelImpl
cannotImplement, computeSelfCost, convertTraits, getInputConvention, getInputTraits, getTraitDef, isDistinct
 
Methods inherited from class org.eigenbase.rel.SingleRel
childrenAccept, deriveRowType, explain, getChild, getInputs, getRows, replaceInput
 
Methods inherited from class org.eigenbase.rel.AbstractRelNode
cloneTraits, collectVariablesSet, collectVariablesUsed, computeDigest, getChildExps, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getOrCreateCorrelVariable, getQuery, getRelTypeName, getRowType, getTable, getTraits, getVariablesStopped, inheritTraitsFrom, isAccessTo, isValid, onRegister, recomputeDigest, register, registerCorrelVariable, setCorrelVariable, toString
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.eigenbase.rel.convert.ConverterRel
getChild
 
Methods inherited from interface org.eigenbase.rel.RelNode
childrenAccept, collectVariablesSet, collectVariablesUsed, explain, getChildExps, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getInputs, getOrCreateCorrelVariable, getQuery, getRelTypeName, getRows, getRowType, getTable, getTraits, getVariablesStopped, isAccessTo, isValid, onRegister, recomputeDigest, registerCorrelVariable, replaceInput, setCorrelVariable
 

Field Detail

toTrait

private final RelTrait toTrait
Constructor Detail

VolcanoPlannerTraitTest.AltTraitConverter

private VolcanoPlannerTraitTest.AltTraitConverter(RelOptCluster cluster,
                                                  RelNode child,
                                                  RelTrait toTrait)
Method Detail

clone

public VolcanoPlannerTraitTest.AltTraitConverter clone()
Description copied from interface: RelNode
Clones this RelNode.

Traits of the RelNode must be explicitly cloned, using AbstractRelNode.inheritTraitsFrom(AbstractRelNode), as the RelNode may have traits of which it has no knowledge. Example implementation:

     public MyRelNode clone()
     {
         MyRelNode clone = new MyRelNode(...);
         clone.inheritTraitsFrom(this);
         return clone;
     }
 
N.B.: This method must be overridden whenever an existing, concrete RelNode is extended. Otherwise, calling clone() will produce a differently typed RelNode, resulting in invalid or incorrect query plans.

Specified by:
clone in interface RelNode
Specified by:
clone in class AbstractRelNode
Returns:
a clone of this RelNode