Class Join

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

public class Join extends BinaryTupleOperator
A natural join between two tuple expressions.
See Also:
  • Constructor Details

  • Method Details

    • 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
    • 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 Join 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.
    • isMergeJoin

      @Experimental public boolean isMergeJoin()
    • setMergeJoin

      @Experimental public void setMergeJoin(boolean mergeJoin)
    • setCacheable

      @Experimental public void setCacheable(boolean cacheable)