|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.eigenbase.rel.AbstractRelNode
org.eigenbase.rel.SingleRel
org.eigenbase.rel.ProjectRelBase
public abstract class ProjectRelBase
ProjectRelBase is an abstract base class for implementations of
ProjectRel.
| Nested Class Summary | |
|---|---|
private static class |
ProjectRelBase.Checker
Visitor which walks over a program and checks validity. |
static interface |
ProjectRelBase.Flags
|
| Field Summary | |
|---|---|
private List<RelCollation> |
collationList
|
protected RexNode[] |
exps
|
protected int |
flags
Values defined in ProjectRelBase.Flags. |
| Fields inherited from class org.eigenbase.rel.AbstractRelNode |
|---|
digest, id, nextId, rowType, traits |
| Fields inherited from interface org.eigenbase.rel.RelNode |
|---|
emptyArray |
| Constructor Summary | |
|---|---|
protected |
ProjectRelBase(RelOptCluster cluster,
RelTraitSet traits,
RelNode child,
RexNode[] exps,
RelDataType rowType,
int flags,
List<RelCollation> collationList)
Creates a Project. |
| Method Summary | |
|---|---|
RelOptCost |
computeSelfCost(RelOptPlanner planner)
Returns the cost of this plan (not including children). |
void |
explain(RelOptPlanWriter pw)
|
RexNode[] |
getChildExps()
Returns an array of this relational expression's child expressions (not including the inputs returned by RelNode.getInputs(). |
List<RelCollation> |
getCollationList()
Returns a description of the physical ordering (or orderings) of this relational expression. |
int |
getFlags()
|
RexNode[] |
getProjectExps()
Returns the project expressions. |
JavaRel |
implementFieldAccess(JavaRelImplementor implementor,
String fieldName)
Burrows into a synthetic record and returns the underlying relation which provides the field called fieldName. |
boolean |
isBoxed()
|
boolean |
isValid(boolean fail)
Returns whether this relational expression is valid. |
| Methods inherited from class org.eigenbase.rel.SingleRel |
|---|
childrenAccept, deriveRowType, getChild, getInputs, getRows, replaceInput |
| Methods inherited from class org.eigenbase.rel.AbstractRelNode |
|---|
clone, cloneTraits, collectVariablesSet, collectVariablesUsed, computeDigest, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getOrCreateCorrelVariable, getQuery, getRelTypeName, getRowType, getTable, getTraits, getVariablesStopped, inheritTraitsFrom, isAccessTo, isDistinct, onRegister, recomputeDigest, register, registerCorrelVariable, setCorrelVariable, toString |
| Methods inherited from class java.lang.Object |
|---|
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
protected RexNode[] exps
protected int flags
ProjectRelBase.Flags.
private final List<RelCollation> collationList
| Constructor Detail |
|---|
protected ProjectRelBase(RelOptCluster cluster,
RelTraitSet traits,
RelNode child,
RexNode[] exps,
RelDataType rowType,
int flags,
List<RelCollation> collationList)
cluster - Cluster this relational expression belongs totraits - traits of this relchild - input relational expressionexps - set of expressions for the input columnsrowType - output row typeflags - values as in ProjectRelBase.FlagscollationList - List of sort keys| Method Detail |
|---|
public List<RelCollation> getCollationList()
RelNode
getCollationList in interface RelNodegetCollationList in class AbstractRelNodepublic boolean isBoxed()
public RexNode[] getChildExps()
RelNodeRelNode.getInputs(). If there are no
child expressions, returns an empty array, not null.
getChildExps in interface RelNodegetChildExps in class AbstractRelNodepublic RexNode[] getProjectExps()
public int getFlags()
public boolean isValid(boolean fail)
RelNodeIf assertions are enabled, this method is typically called with
fail = true, as follows:
This signals that the method can throw anassert rel.isValid(true)
AssertionError if it is
not valid.
isValid in interface RelNodeisValid in class AbstractRelNodefail - Whether to fail if invalid
public RelOptCost computeSelfCost(RelOptPlanner planner)
RelNodeNOTE jvs 29-Mar-2006: Don't call this method directly. Instead, use
RelMetadataQuery.getNonCumulativeCost(org.eigenbase.rel.RelNode), which gives plugins a
chance to override the rel's default ideas about cost.
computeSelfCost in interface RelNodecomputeSelfCost in class AbstractRelNodepublic void explain(RelOptPlanWriter pw)
explain in interface RelNodeexplain in class SingleRel
public JavaRel implementFieldAccess(JavaRelImplementor implementor,
String fieldName)
fieldName.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||