Interface BindingSet

    • Method Summary

      All Methods Instance Methods Abstract Methods Default Methods 
      Modifier and Type Method Description
      boolean equals​(java.lang.Object o)
      Compares a BindingSet object to another object.
      Binding getBinding​(java.lang.String bindingName)
      Gets the binding with the specified name from this BindingSet.
      java.util.Set<java.lang.String> getBindingNames()
      Gets the names of the bindings in this BindingSet.
      Value getValue​(java.lang.String bindingName)
      Gets the value of the binding with the specified name from this BindingSet.
      boolean hasBinding​(java.lang.String bindingName)
      Checks whether this BindingSet has a binding with the specified name.
      int hashCode()
      The hash code of a binding is defined as the bit-wise XOR of the hash codes of its bindings:
      default boolean isEmpty()  
      java.util.Iterator<Binding> iterator()
      Creates an iterator over the bindings in this BindingSet.
      int size()
      Returns the number of bindings in this BindingSet.
      • Methods inherited from interface java.lang.Iterable

        forEach, spliterator
    • Method Detail

      • iterator

        java.util.Iterator<Binding> iterator()
        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.
        Specified by:
        iterator in interface java.lang.Iterable<Binding>
      • getBindingNames

        java.util.Set<java.lang.String> getBindingNames()
        Gets the names of the bindings in this BindingSet.
        Returns:
        A set of binding names.
      • getBinding

        Binding getBinding​(java.lang.String bindingName)
        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

        boolean hasBinding​(java.lang.String bindingName)
        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.
      • getValue

        Value getValue​(java.lang.String bindingName)
        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.
      • size

        int size()
        Returns the number of bindings in this BindingSet.
        Returns:
        The number of bindings in this BindingSet.
      • equals

        boolean equals​(java.lang.Object o)
        Compares a BindingSet object to another object.
        Overrides:
        equals in class java.lang.Object
        Parameters:
        o - 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

        int hashCode()
        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.

        Overrides:
        hashCode in class java.lang.Object
        Returns:
        A hash code for the BindingSet.
      • isEmpty

        default boolean isEmpty()