Class AbstractBindingSet

java.lang.Object
org.eclipse.rdf4j.query.AbstractBindingSet
All Implemented Interfaces:
Serializable, Iterable<Binding>, BindingSet
Direct Known Subclasses:
ArrayBindingSet, ListBindingSet, MapBindingSet, QueryBindingSet, SPARQLQueryBindingSet

public abstract class AbstractBindingSet extends Object implements BindingSet
Abstract base class for BindingSet implementations, providing a.o. consistent implementations of BindingSet.equals(Object) and BindingSet.hashCode().
Author:
Jeen Broekstra
See Also:
  • Constructor Details

    • AbstractBindingSet

      public AbstractBindingSet()
  • Method Details

    • equals

      public boolean equals(Object other)
      Description copied from interface: BindingSet
      Compares a BindingSet object to another object.
      Specified by:
      equals in interface BindingSet
      Overrides:
      equals in class Object
      Parameters:
      other - The object to compare this binding to.
      Returns:
      true if the other object is an instance of BindingSet and it contains the same set of bindings (disregarding order), false otherwise.
    • hashCode

      public final int hashCode()
      Description copied from interface: BindingSet
      The hash code of a binding is defined as the bit-wise XOR of the hash codes of its bindings:
       int hashCode = 0;
      
       for (Binding binding : this) {
              hashCode ˆ= binding.getName().hashCode() ˆ binding.getValue().hashCode();
       }
       

      Note: the calculated hash code intentionally does not depend on the order in which the bindings are iterated over.

      Specified by:
      hashCode in interface BindingSet
      Overrides:
      hashCode in class Object
      Returns:
      A hash code for the BindingSet.
    • toString

      public String toString()
      Overrides:
      toString in class Object