Class Difference

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

public class Difference extends BinaryTupleOperator
The MINUS set operator, which returns the result of the left tuple expression, except for the results that are also returned by the right tuple expression.
See Also:
  • Constructor Details

    • Difference

      public Difference()
    • Difference

      public Difference(TupleExpr leftArg, TupleExpr rightArg)
      Creates a new minus operator that operates on the two specified arguments.
      Parameters:
      leftArg - The left argument of the minus operator.
      rightArg - The right argument of the minus operator.
  • 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 Difference 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.