Class Bindables.BindableWindow

All Implemented Interfaces:
Cloneable, BindableRel, InterpretableRel, RelOptNode, Hintable, RelNode, ArrayBindable, Bindable<@Nullable Object[]>, Typed
Enclosing class:
Bindables

public static class Bindables.BindableWindow extends Window implements BindableRel
Implementation of Window in bindable convention.
  • Method Details

    • copy

      public RelNode copy(RelTraitSet traitSet, 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 interface RelNode
      Overrides:
      copy in class AbstractRelNode
      Parameters:
      traitSet - Trait set
      inputs - Inputs
      Returns:
      Copy of this relational expression, substituting traits and inputs
    • copy

      public Window copy(List<RexLiteral> constants)
      Description copied from class: Window
      Creates a copy of this Window.
      Specified by:
      copy in class Window
      Parameters:
      constants - Replaces the list of constants in the returned copy
      Returns:
      New Window
    • computeSelfCost

      public @Nullable 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 interface RelNode
      Overrides:
      computeSelfCost in class Window
      Parameters:
      planner - Planner for cost calculation
      mq - Metadata query
      Returns:
      Cost of this plan (not including children)
    • getElementType

      public Class<Object[]> getElementType()
      Description copied from interface: Typed
      Gets the type of the element(s) that are returned in this collection.
      Specified by:
      getElementType in interface ArrayBindable
      Specified by:
      getElementType in interface Typed
    • bind

      public Enumerable<@Nullable Object[]> bind(DataContext dataContext)
      Description copied from interface: Bindable
      Executes this statement and returns an enumerable which will yield rows. The environment parameter provides the values in the root of the environment (usually schemas).
      Specified by:
      bind in interface Bindable<@Nullable Object[]>
      Parameters:
      dataContext - Environment that provides tables
      Returns:
      Enumerable over rows
    • 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 interface InterpretableRel