Package org.eclipse.rdf4j.query.algebra.evaluation

## Class QueryBindingSet

- java.lang.Object
- - org.eclipse.rdf4j.query.AbstractBindingSet
  - - org.eclipse.rdf4j.query.algebra.evaluation.QueryBindingSet

- All Implemented Interfaces:
    `Serializable`, `Iterable<Binding>`, `BindingSet`

      public class QueryBindingSet
      extends AbstractBindingSet

  An implementation of the `BindingSet` interface that is used to evalate query object models. This implementations differs from `MapBindingSet` in that it maps variable names to Value objects and that the Binding objects are created lazily.
  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `QueryBindingSet()` |
    `QueryBindingSet​(int capacity)` |
    `QueryBindingSet​(BindingSet bindingSet)` |

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `void` | `addAll​(BindingSet bindingSet)` |
    `void` | `addBinding​(String name, Value value)` | Adds a new binding to the binding set.
    `void` | `addBinding​(Binding binding)` | Adds a new binding to the binding set.
    `boolean` | `equals​(Object other)` | Compares a BindingSet object to another object.
    `Binding` | `getBinding​(String bindingName)` | Gets the binding with the specified name from this BindingSet.
    `Set<String>` | `getBindingNames()` | Gets the names of the bindings in this BindingSet.
    `Value` | `getValue​(String bindingName)` | Gets the value of the binding with the specified name from this BindingSet.
    `boolean` | `hasBinding​(String bindingName)` | Checks whether this BindingSet has a binding with the specified name.
    `Iterator<Binding>` | `iterator()` | Creates an iterator over the bindings in this BindingSet.
    `void` | `removeAll​(Collection<String> bindingNames)` |
    `void` | `removeBinding​(String name)` |
    `void` | `retainAll​(Collection<String> bindingNames)` |
    `void` | `setBinding​(String name, Value value)` |
    `void` | `setBinding​(Binding binding)` |
    `int` | `size()` | Returns the number of bindings in this BindingSet.

    - ### Methods inherited from class org.eclipse.rdf4j.query.AbstractBindingSet

      `hashCode, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

    - ### Methods inherited from interface java.lang.Iterable

      `forEach, spliterator`

- - ### Constructor Detail

    - #### QueryBindingSet

          public QueryBindingSet()

    - #### QueryBindingSet

          public QueryBindingSet​(int capacity)

    - #### QueryBindingSet

          public QueryBindingSet​(BindingSet bindingSet)

  - ### Method Detail

    - #### addAll

          public void addAll​(BindingSet bindingSet)

    - #### addBinding

          public void addBinding​(Binding binding)

      Adds a new binding to the binding set. The binding's name must not already be part of this binding set.
      Parameters:
        `binding` - The binding to add this this BindingSet.

    - #### addBinding

          public void addBinding​(String name,
                                 Value value)

      Adds a new binding to the binding set. The binding's name must not already be part of this binding set.
      Parameters:
        `name` - The binding's name, must not be bound in this binding set already.
        `value` - The binding's value.

    - #### setBinding

          public void setBinding​(Binding binding)

    - #### setBinding

          public void setBinding​(String name,
                                 Value value)

    - #### removeBinding

          public void removeBinding​(String name)

    - #### removeAll

          public void removeAll​(Collection<String> bindingNames)

    - #### retainAll

          public void retainAll​(Collection<String> bindingNames)

    - #### getBindingNames

          public Set<String> getBindingNames()

      Description copied from interface: `BindingSet`
      Gets the names of the bindings in this BindingSet.
      Returns:
        A set of binding names.

    - #### getValue

          public Value getValue​(String bindingName)

      Description copied from interface: `BindingSet`
      Gets the value of the binding with the specified name from this BindingSet.
      Parameters:
        `bindingName` - The name of the binding.
      Returns:
        The value of the binding with the specified name, or null if there is no such binding in this BindingSet.

    - #### getBinding

          public Binding getBinding​(String bindingName)

      Description copied from interface: `BindingSet`
      Gets the binding with the specified name from this BindingSet.
      Parameters:
        `bindingName` - The name of the binding.
      Returns:
        The binding with the specified name, or null if there is no such binding in this BindingSet.

    - #### hasBinding

          public boolean hasBinding​(String bindingName)

      Description copied from interface: `BindingSet`
      Checks whether this BindingSet has a binding with the specified name.
      Parameters:
        `bindingName` - The name of the binding.
      Returns:
        true if this BindingSet has a binding with the specified name, false otherwise.

    - #### iterator

          public Iterator<Binding> iterator()

      Description copied from interface: `BindingSet`
      Creates an iterator over the bindings in this BindingSet. This only returns bindings with non-null values. An implementation is free to return the bindings in arbitrary order.

    - #### size

          public int size()

      Description copied from interface: `BindingSet`
      Returns the number of bindings in this BindingSet.
      Returns:
        The number of bindings in this BindingSet.

    - #### 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 `AbstractBindingSet`
      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.