All Implemented Interfaces:
NamedWriteable, Writeable, TelemetryAware, Resolvable, SortAgnostic
Direct Known Subclasses:
NamedSubquery

public class Subquery extends UnaryPlan implements TelemetryAware, SortAgnostic
  • Field Details

  • Constructor Details

  • Method Details

    • writeTo

      public void writeTo(StreamOutput out) throws IOException
      Specified by:
      writeTo in interface Writeable
      Throws:
      IOException
    • getWriteableName

      public String getWriteableName()
      Specified by:
      getWriteableName in interface NamedWriteable
    • info

      protected NodeInfo<? extends Subquery> info()
      Description copied from class: Node
      Normally, you want to use one of the static create methods to implement this.

      For QueryPlans, it is very important that the properties contain all of the expressions and references relevant to this node, and that all the properties are used in the provided constructor; otherwise query plan transformations like QueryPlan#transformExpressionsOnly(Function) will not have an effect.

      Specified by:
      info in class Node<LogicalPlan>
    • replaceChild

      public UnaryPlan replaceChild(LogicalPlan newChild)
      Specified by:
      replaceChild in class UnaryPlan
    • output

      public List<Attribute> output()
      Description copied from class: QueryPlan
      The ordered list of attributes (i.e. columns) this plan produces when executed. Must be called only on resolved plans, otherwise may throw an exception or return wrong results.
      Overrides:
      output in class UnaryPlan
    • expressionsResolved

      public boolean expressionsResolved()
      Specified by:
      expressionsResolved in class LogicalPlan
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class UnaryPlan
    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class UnaryPlan
    • nodeString

      public void nodeString(StringBuilder sb, Node.NodeStringFormat format)
      Description copied from class: Node
      Append this Node's string representation to sb. This does not include this node's Node.children().
      Overrides:
      nodeString in class Node<LogicalPlan>
      Parameters:
      sb - target for the string
      format - configuration for rendering the string representation
    • plan

      public LogicalPlan plan()