Package org.apache.calcite.interpreter
Class Bindables.BindableWindow
- java.lang.Object
-
- org.apache.calcite.rel.AbstractRelNode
-
- org.apache.calcite.rel.SingleRel
-
- org.apache.calcite.rel.core.Window
-
- org.apache.calcite.interpreter.Bindables.BindableWindow
-
- All Implemented Interfaces:
java.lang.Cloneable
,BindableRel
,InterpretableRel
,RelOptNode
,RelNode
,ArrayBindable
,Bindable<java.lang.Object[]>
,Typed
- Enclosing class:
- Bindables
public static class Bindables.BindableWindow extends Window implements BindableRel
Implementation ofWindow
in bindable convention.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.apache.calcite.rel.core.Window
Window.Group, Window.RexWinAggCall
-
Nested classes/interfaces inherited from interface org.apache.calcite.interpreter.InterpretableRel
InterpretableRel.InterpreterImplementor
-
Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode
RelNode.Context
-
-
Constructor Summary
Constructors Constructor Description BindableWindow(RelOptCluster cluster, RelTraitSet traitSet, RelNode input, java.util.List<RexLiteral> constants, RelDataType rowType, java.util.List<Window.Group> groups)
Creates an BindableWindowRel.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Enumerable<java.lang.Object[]>
bind(DataContext dataContext)
Executes this statement and returns an enumerable which will yield rows.RelOptCost
computeSelfCost(RelOptPlanner planner, RelMetadataQuery mq)
Returns the cost of this plan (not including children).RelNode
copy(RelTraitSet traitSet, java.util.List<RelNode> inputs)
Creates a copy of this relational expression, perhaps changing traits and inputs.java.lang.Class<java.lang.Object[]>
getElementType()
Gets the type of the element(s) that are returned in this collection.Node
implement(InterpretableRel.InterpreterImplementor implementor)
Creates an interpreter node to implement this relational expression.-
Methods inherited from class org.apache.calcite.rel.core.Window
explainTerms, getCollation, getConstants, getProjectOrdinals, 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, accept, collectVariablesSet, collectVariablesUsed, computeDigest, computeSelfCost, explain, getChildExps, getCluster, getCollationList, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getQuery, getRelTypeName, getRows, getRowType, getTable, getTraitSet, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, metadata, onRegister, recomputeDigest, register, sole, toString
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.apache.calcite.rel.RelNode
accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, computeSelfCost, estimateRowCount, explain, getChildExps, getCollationList, getConvention, getCorrelVariable, getExpectedInputRowType, getInput, getInputs, getQuery, getRelTypeName, getRows, getRowType, getTable, getVariablesSet, getVariablesStopped, isDistinct, isKey, isValid, isValid, metadata, onRegister, recomputeDigest, register, replaceInput
-
Methods inherited from interface org.apache.calcite.plan.RelOptNode
getCluster, getDescription, getDigest, getId, getTraitSet
-
-
-
-
Constructor Detail
-
BindableWindow
BindableWindow(RelOptCluster cluster, RelTraitSet traitSet, RelNode input, java.util.List<RexLiteral> constants, RelDataType rowType, java.util.List<Window.Group> groups)
Creates an BindableWindowRel.
-
-
Method Detail
-
copy
public RelNode copy(RelTraitSet traitSet, java.util.List<RelNode> inputs)
Description copied from interface:RelNode
Creates a copy of this relational expression, perhaps changing traits and inputs.Sub-classes with other important attributes are encouraged to create variants of this method with more parameters.
- Specified by:
copy
in interfaceRelNode
- Overrides:
copy
in classAbstractRelNode
- Parameters:
traitSet
- Trait setinputs
- Inputs- Returns:
- Copy of this relational expression, substituting traits and inputs
-
computeSelfCost
public RelOptCost computeSelfCost(RelOptPlanner planner, RelMetadataQuery mq)
Description copied from interface:RelNode
Returns the cost of this plan (not including children). The base implementation throws an error; derived classes should override.NOTE 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.- Specified by:
computeSelfCost
in interfaceRelNode
- Overrides:
computeSelfCost
in classWindow
- Parameters:
planner
- Planner for cost calculationmq
- Metadata query- Returns:
- Cost of this plan (not including children)
-
getElementType
public java.lang.Class<java.lang.Object[]> getElementType()
Description copied from interface:Typed
Gets the type of the element(s) that are returned in this collection.- Specified by:
getElementType
in interfaceArrayBindable
- Specified by:
getElementType
in interfaceTyped
-
bind
public Enumerable<java.lang.Object[]> bind(DataContext dataContext)
Description copied from interface:Bindable
Executes this statement and returns an enumerable which will yield rows. Theenvironment
parameter provides the values in the root of the environment (usually schemas).
-
implement
public Node implement(InterpretableRel.InterpreterImplementor implementor)
Description copied from interface:InterpretableRel
Creates an interpreter node to implement this relational expression.- Specified by:
implement
in interfaceInterpretableRel
-
-