Class EnumerableTableScan

java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.core.TableScan
org.apache.calcite.adapter.enumerable.EnumerableTableScan
All Implemented Interfaces:
Cloneable, EnumerableRel, RelOptNode, Hintable, PhysicalNode, RelNode

public class EnumerableTableScan extends TableScan implements EnumerableRel
  • Constructor Details

  • Method Details

    • passThrough

      public @Nullable RelNode passThrough(RelTraitSet required)
      Code snippet to demonstrate how to generate IndexScan on demand by passing required collation through TableScan.
      Specified by:
      passThrough in interface PhysicalNode
      Returns:
      IndexScan if there is index available on collation keys
    • getDeriveMode

      public DeriveMode getDeriveMode()
      Description copied from interface: PhysicalNode
      Returns mode of derivation.
      Specified by:
      getDeriveMode in interface EnumerableRel
      Specified by:
      getDeriveMode in interface PhysicalNode
    • create

      public static EnumerableTableScan create(RelOptCluster cluster, RelOptTable relOptTable)
      Creates an EnumerableTableScan.
    • canHandle

      @Deprecated public static boolean canHandle(Table table)
      Deprecated.
      remove before Calcite 2.0
      Returns whether EnumerableTableScan can generate code to handle a particular variant of the Table SPI.
    • canHandle

      public static boolean canHandle(RelOptTable relOptTable)
      Returns whether EnumerableTableScan can generate code to handle a particular variant of the Table SPI.
    • deduceElementType

      public static Class deduceElementType(@Nullable Table table)
    • deduceFormat

      public static JavaRowFormat deduceFormat(RelOptTable table)
    • 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
    • implement

      Description copied from interface: EnumerableRel
      Creates a plan for this expression according to a calling convention.
      Specified by:
      implement in interface EnumerableRel
      Parameters:
      implementor - Implementor
      pref - Preferred representation for rows in result expression
      Returns:
      Plan for this expression according to a calling convention