Interface EnumerableRel

All Superinterfaces:
Cloneable, PhysicalNode, RelNode, RelOptNode
All Known Implementing Classes:
CassandraToEnumerableConverter, CsvTableScan, CsvTableScan, ElasticsearchToEnumerableConverter, EnumerableAggregate, EnumerableBatchNestedLoopJoin, EnumerableCalc, EnumerableCollect, EnumerableCorrelate, EnumerableFilter, EnumerableHashJoin, EnumerableInterpreter, EnumerableIntersect, EnumerableLimit, EnumerableLimitSort, EnumerableMatch, EnumerableMergeJoin, EnumerableMergeUnion, EnumerableMinus, EnumerableNestedLoopJoin, EnumerableProject, EnumerableRepeatUnion, EnumerableSort, EnumerableSortedAggregate, EnumerableTableFunctionScan, EnumerableTableModify, EnumerableTableScan, EnumerableTableSpool, EnumerableUncollect, EnumerableUnion, EnumerableValues, EnumerableWindow, GeodeToEnumerableConverter, InnodbToEnumerableConverter, JdbcToEnumerableConverter, MongoToEnumerableConverter, PigToEnumerableConverter, SparkToEnumerableConverter, SplunkTableScan

public interface EnumerableRel extends PhysicalNode
A relational expression of one of the EnumerableConvention calling conventions.
  • Method Details

    • passThroughTraits

      default @Nullable Pair<RelTraitSet,List<RelTraitSet>> passThroughTraits(RelTraitSet required)
      Description copied from interface: PhysicalNode
      Pass required traitset from parent node to child nodes, returns a pair of traits after traits is passed down.

      Pair.left: the new traitset; Pair.right: the list of required traitsets for child nodes.

      Specified by:
      passThroughTraits in interface PhysicalNode
    • deriveTraits

      default @Nullable Pair<RelTraitSet,List<RelTraitSet>> deriveTraits(RelTraitSet childTraits, int childId)
      Description copied from interface: PhysicalNode
      Derive traitset from child node, returns a pair of traits after traits derivation.

      Pair.left: the new traitset; Pair.right: the list of required traitsets for child nodes.

      Specified by:
      deriveTraits in interface PhysicalNode
    • getDeriveMode

      default DeriveMode getDeriveMode()
      Description copied from interface: PhysicalNode
      Returns mode of derivation.
      Specified by:
      getDeriveMode in interface PhysicalNode
    • implement

      Creates a plan for this expression according to a calling convention.
      Parameters:
      implementor - Implementor
      pref - Preferred representation for rows in result expression
      Returns:
      Plan for this expression according to a calling convention