Class Lateral

All Implemented Interfaces:
Serializable, Cloneable, QueryModelNode, TupleExpr, VariableScopeChange

public class Lateral extends BinaryTupleOperator
This operator evaluates the right-hand side for each row from the left-hand side, with variables from the left-hand side in scope for the right-hand side evaluation.
See Also:
  • Constructor Details

  • Method Details

    • getRightInputBindingNames

      public Set<String> getRightInputBindingNames()
    • setRightInputBindingNames

      public void setRightInputBindingNames(Set<String> rightInputBindingNames)
    • getBindingNames

      public Set<String> getBindingNames()
      Description copied from interface: TupleExpr
      Gets the names of the bindings that are, or can be, returned by this tuple expression when it is evaluated.
      Returns:
      A set of binding names.
    • getAssuredBindingNames

      public Set<String> getAssuredBindingNames()
      Description copied from interface: TupleExpr
      Gets the names of the bindings that are guaranteed to be present in the results produced by this tuple expression.
      Returns:
      A set of binding names.
    • visit

      public <X extends Exception> void visit(QueryModelVisitor<X> visitor) throws X
      Description copied from interface: QueryModelNode
      Visits this node. The node reports itself to the visitor with the proper runtime type.
      Throws:
      X
    • visitChildren

      public <X extends Exception> void visitChildren(QueryModelVisitor<X> visitor) throws X
      Description copied from interface: QueryModelNode
      Visits the children of this node. The node calls QueryModelNode.visit(QueryModelVisitor) on all of its child nodes.
      Specified by:
      visitChildren in interface QueryModelNode
      Overrides:
      visitChildren in class BinaryTupleOperator
      Throws:
      X
    • equals

      public boolean equals(Object other)
      Description copied from interface: QueryModelNode
      Returns true if this query model node and its children are recursively equal to o and its children.
      Specified by:
      equals in interface QueryModelNode
      Overrides:
      equals in class BinaryTupleOperator
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class BinaryTupleOperator
    • clone

      public Lateral clone()
      Description copied from interface: QueryModelNode
      Returns a (deep) clone of this query model node. This method recursively clones the entire node tree, starting from this nodes.
      Specified by:
      clone in interface QueryModelNode
      Specified by:
      clone in interface TupleExpr
      Overrides:
      clone in class BinaryTupleOperator
      Returns:
      A deep clone of this query model node.