Class PluginProjectRel

java.lang.Object
org.apache.calcite.rel.AbstractRelNode
org.apache.calcite.rel.SingleRel
org.apache.calcite.rel.core.Project
org.apache.drill.exec.planner.common.DrillProjectRelBase
org.apache.drill.exec.store.plan.rel.PluginProjectRel
All Implemented Interfaces:
Cloneable, org.apache.calcite.plan.RelOptNode, org.apache.calcite.rel.hint.Hintable, org.apache.calcite.rel.RelNode, DrillRelNode, PluginRel

public class PluginProjectRel extends DrillProjectRelBase implements PluginRel
Project implementation for Drill plugins.
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.apache.calcite.rel.core.Project

    org.apache.calcite.rel.core.Project.Flags

    Nested classes/interfaces inherited from interface org.apache.calcite.rel.RelNode

    org.apache.calcite.rel.RelNode.Context
  • Field Summary

    Fields inherited from class org.apache.calcite.rel.core.Project

    exps, hints, variablesSet

    Fields inherited from class org.apache.calcite.rel.SingleRel

    input

    Fields inherited from class org.apache.calcite.rel.AbstractRelNode

    digest, id, rowType, traitSet
  • Constructor Summary

    Constructors
    Constructor
    Description
    PluginProjectRel(org.apache.calcite.plan.Convention convention, org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode input, List<? extends org.apache.calcite.rex.RexNode> projects, org.apache.calcite.rel.type.RelDataType rowType)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
     
    org.apache.calcite.plan.RelOptCost
    computeSelfCost(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq)
     
    org.apache.calcite.rel.core.Project
    copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode input, List<org.apache.calcite.rex.RexNode> projects, org.apache.calcite.rel.type.RelDataType rowType)
     
    void
     

    Methods inherited from class org.apache.drill.exec.planner.common.DrillProjectRelBase

    getProjectExpressions

    Methods inherited from class org.apache.calcite.rel.core.Project

    accept, containsOver, copy, copy, deepEquals0, deepHashCode0, explainTerms, getFlags, getHints, getMapping, getMapping, getNamedProjects, getPartialMapping, getPermutation, getPermutation, getProjects, getVariablesSet, isBoxed, isMapping, 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, collectVariablesSet, collectVariablesUsed, deepEquals, deepHashCode, equals, explain, getCluster, getConvention, getCorrelVariable, getDescription, getDigest, getExpectedInputRowType, getId, getInput, getRelDigest, getRelTypeName, getRowType, getTable, getTraitSet, hashCode, isEnforcer, metadata, onRegister, recomputeDigest, register, sole, toString

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface org.apache.calcite.rel.hint.Hintable

    attachHints, withHints

    Methods inherited from interface org.apache.calcite.rel.RelNode

    accept, accept, childrenAccept, collectVariablesSet, collectVariablesUsed, copy, deepEquals, deepHashCode, estimateRowCount, explain, explain, fieldIsNullable, getConvention, getCorrelVariable, getDigest, getExpectedInputRowType, getInput, getInputs, getRelDigest, getRelTypeName, getRowType, getTable, getVariablesSet, isEnforcer, isValid, metadata, onRegister, recomputeDigest, register, replaceInput

    Methods inherited from interface org.apache.calcite.plan.RelOptNode

    getCluster, getDescription, getId, getTraitSet
  • Constructor Details

    • PluginProjectRel

      public PluginProjectRel(org.apache.calcite.plan.Convention convention, org.apache.calcite.plan.RelOptCluster cluster, org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode input, List<? extends org.apache.calcite.rex.RexNode> projects, org.apache.calcite.rel.type.RelDataType rowType)
  • Method Details

    • copy

      public org.apache.calcite.rel.core.Project copy(org.apache.calcite.plan.RelTraitSet traitSet, org.apache.calcite.rel.RelNode input, List<org.apache.calcite.rex.RexNode> projects, org.apache.calcite.rel.type.RelDataType rowType)
      Specified by:
      copy in class org.apache.calcite.rel.core.Project
    • computeSelfCost

      public org.apache.calcite.plan.RelOptCost computeSelfCost(org.apache.calcite.plan.RelOptPlanner planner, org.apache.calcite.rel.metadata.RelMetadataQuery mq)
      Specified by:
      computeSelfCost in interface org.apache.calcite.rel.RelNode
      Overrides:
      computeSelfCost in class DrillProjectRelBase
    • implement

      public void implement(PluginImplementor implementor) throws IOException
      Specified by:
      implement in interface PluginRel
      Throws:
      IOException
    • canImplement

      public boolean canImplement(PluginImplementor implementor)
      Specified by:
      canImplement in interface PluginRel