Class Reference2ObjectFunctions.UnmodifiableFunction<K,​V>

java.lang.Object
it.unimi.dsi.fastutil.objects.AbstractReference2ObjectFunction<K,​V>
it.unimi.dsi.fastutil.objects.Reference2ObjectFunctions.UnmodifiableFunction<K,​V>
All Implemented Interfaces:
Function<K,​V>, Reference2ObjectFunction<K,​V>, java.io.Serializable, java.util.function.Function<K,​V>
Direct Known Subclasses:
Reference2ObjectMaps.UnmodifiableMap
Enclosing class:
Reference2ObjectFunctions

public static class Reference2ObjectFunctions.UnmodifiableFunction<K,​V>
extends AbstractReference2ObjectFunction<K,​V>
implements java.io.Serializable
An unmodifiable wrapper class for functions.
See Also:
Serialized Form
  • Method Details

    • size

      public int size()
      Description copied from interface: Function
      Returns the intended number of keys in this function, or -1 if no such number exists.

      Most function implementations will have some knowledge of the intended number of keys in their domain. In some cases, however, this might not be possible. This default implementation, in particular, returns -1.

      Specified by:
      size in interface Function<K,​V>
      Returns:
      the intended number of keys in this function, or -1 if that number is not available.
    • defaultReturnValue

      public V defaultReturnValue()
      Description copied from interface: Reference2ObjectFunction
      Gets the default return value.

      This default implementation just return the default null value of the type (null for objects, 0 for scalars, false for Booleans).

      Specified by:
      defaultReturnValue in interface Reference2ObjectFunction<K,​V>
      Overrides:
      defaultReturnValue in class AbstractReference2ObjectFunction<K,​V>
      Returns:
      the current default return value.
    • defaultReturnValue

      public void defaultReturnValue​(V defRetValue)
      Description copied from interface: Reference2ObjectFunction
      Sets the default return value (optional operation). This value must be returned by type-specific versions of get(), put() and remove() to denote that the map does not contain the specified key. It must be 0/false/null by default.
      Specified by:
      defaultReturnValue in interface Reference2ObjectFunction<K,​V>
      Overrides:
      defaultReturnValue in class AbstractReference2ObjectFunction<K,​V>
      Parameters:
      defRetValue - the new default return value.
      See Also:
      Reference2ObjectFunction.defaultReturnValue()
    • containsKey

      public boolean containsKey​(java.lang.Object k)
      Description copied from interface: Function
      Returns true if this function contains a mapping for the specified key.

      Note that for some kind of functions (e.g., hashes) this method will always return true. This default implementation, in particular, always return true.

      Specified by:
      containsKey in interface Function<K,​V>
      Parameters:
      k - the key.
      Returns:
      true if this function associates a value to key.
      See Also:
      Map.containsKey(Object)
    • put

      public V put​(K k, V v)
      Description copied from interface: Reference2ObjectFunction
      Adds a pair to the map (optional operation).
      Specified by:
      put in interface Function<K,​V>
      Specified by:
      put in interface Reference2ObjectFunction<K,​V>
      Parameters:
      k - the key.
      v - the value.
      Returns:
      the old value, or the default return value if no value was present for the given key.
      See Also:
      Function.put(Object,Object)
    • get

      public V get​(java.lang.Object k)
      Description copied from interface: Reference2ObjectFunction
      Returns the value to which the given key is mapped.
      Specified by:
      get in interface Function<K,​V>
      Specified by:
      get in interface Reference2ObjectFunction<K,​V>
      Parameters:
      k - the key.
      Returns:
      the corresponding value, or the default return value if no value was present for the given key.
      See Also:
      Function.get(Object)
    • getOrDefault

      public V getOrDefault​(java.lang.Object k, V defaultValue)
      Description copied from interface: Reference2ObjectFunction
      Returns the value associated by this function to the specified key, or give the specified value if not present.
      Specified by:
      getOrDefault in interface Function<K,​V>
      Specified by:
      getOrDefault in interface Reference2ObjectFunction<K,​V>
      Parameters:
      k - the key.
      defaultValue - the value to return if not present.
      Returns:
      the corresponding value, or defaultValue if no value was present for the given key.
      See Also:
      Function.getOrDefault(Object, Object)
    • remove

      public V remove​(java.lang.Object k)
      Description copied from interface: Reference2ObjectFunction
      Removes the mapping with the given key (optional operation).
      Specified by:
      remove in interface Function<K,​V>
      Specified by:
      remove in interface Reference2ObjectFunction<K,​V>
      Parameters:
      k - the key.
      Returns:
      the old value, or the default return value if no value was present for the given key.
      See Also:
      Function.remove(Object)
    • clear

      public void clear()
      Description copied from interface: Function
      Removes all associations from this function (optional operation).
      Specified by:
      clear in interface Function<K,​V>
      See Also:
      Map.clear()
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class java.lang.Object
    • equals

      public boolean equals​(java.lang.Object o)
      Overrides:
      equals in class java.lang.Object
    • toString

      public java.lang.String toString()
      Overrides:
      toString in class java.lang.Object