it.unimi.dsi.fastutil.ints
Class Int2ReferenceFunctions.UnmodifiableFunction<V>

java.lang.Object
  extended by it.unimi.dsi.fastutil.ints.AbstractInt2ReferenceFunction<V>
      extended by it.unimi.dsi.fastutil.ints.Int2ReferenceFunctions.UnmodifiableFunction<V>
All Implemented Interfaces:
Function<Integer,V>, Int2ReferenceFunction<V>, Serializable
Direct Known Subclasses:
Int2ReferenceMaps.UnmodifiableMap
Enclosing class:
Int2ReferenceFunctions

public static class Int2ReferenceFunctions.UnmodifiableFunction<V>
extends AbstractInt2ReferenceFunction<V>
implements Serializable

An unmodifiable wrapper class for functions.

See Also:
Serialized Form

Field Summary
protected  Int2ReferenceFunction<V> function
           
static long serialVersionUID
           
 
Fields inherited from class it.unimi.dsi.fastutil.ints.AbstractInt2ReferenceFunction
defRetValue
 
Constructor Summary
protected Int2ReferenceFunctions.UnmodifiableFunction(Int2ReferenceFunction<V> f)
           
 
Method Summary
 void clear()
          Removes all associations from this function (optional operation).
 boolean containsKey(int k)
           
 boolean containsKey(Object ok)
          Returns true if this function contains a mapping for the specified key.
 V defaultReturnValue()
          Gets the default return value.
 void defaultReturnValue(V defRetValue)
          Sets the default return value.
 V get(int k)
          Returns the value to which the given key is mapped.
 V get(Object k)
          Delegates to the corresponding type-specific method, taking care of returning null on a missing key.
 V put(int k, V v)
          Adds a pair to the map.
 V remove(int k)
          Removes the mapping with the given key.
 V remove(Object k)
          Delegates to the corresponding type-specific method, taking care of returning null on a missing key.
 int size()
          Returns the intended number of keys in this function, or -1 if no such number exists.
 String toString()
           
 
Methods inherited from class it.unimi.dsi.fastutil.ints.AbstractInt2ReferenceFunction
put
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

public static final long serialVersionUID
See Also:
Constant Field Values

function

protected final Int2ReferenceFunction<V> function
Constructor Detail

Int2ReferenceFunctions.UnmodifiableFunction

protected Int2ReferenceFunctions.UnmodifiableFunction(Int2ReferenceFunction<V> f)
Method Detail

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.

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

containsKey

public boolean containsKey(int k)
Specified by:
containsKey in interface Int2ReferenceFunction<V>
See Also:
Function.containsKey(Object)

defaultReturnValue

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

Specified by:
defaultReturnValue in interface Int2ReferenceFunction<V>
Overrides:
defaultReturnValue in class AbstractInt2ReferenceFunction<V>
Returns:
the current default return value.

defaultReturnValue

public void defaultReturnValue(V defRetValue)
Description copied from interface: Int2ReferenceFunction
Sets the default return value. 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 Int2ReferenceFunction<V>
Overrides:
defaultReturnValue in class AbstractInt2ReferenceFunction<V>
Parameters:
defRetValue - the new default return value.
See Also:
Int2ReferenceFunction.defaultReturnValue()

put

public V put(int k,
             V v)
Description copied from interface: Int2ReferenceFunction
Adds a pair to the map.

Specified by:
put in interface Int2ReferenceFunction<V>
Overrides:
put in class AbstractInt2ReferenceFunction<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)

clear

public void clear()
Description copied from interface: Function
Removes all associations from this function (optional operation).

Specified by:
clear in interface Function<Integer,V>
Overrides:
clear in class AbstractInt2ReferenceFunction<V>
See Also:
Map.clear()

toString

public String toString()
Overrides:
toString in class Object

remove

public V remove(int k)
Description copied from interface: Int2ReferenceFunction
Removes the mapping with the given key.

Specified by:
remove in interface Int2ReferenceFunction<V>
Overrides:
remove in class AbstractInt2ReferenceFunction<V>
Returns:
the old value, or the default return value if no value was present for the given key.
See Also:
Function.remove(Object)

get

public V get(int k)
Description copied from interface: Int2ReferenceFunction
Returns the value to which the given key is mapped.

Specified by:
get in interface Int2ReferenceFunction<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)

containsKey

public boolean containsKey(Object ok)
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.

Specified by:
containsKey in interface Function<Integer,V>
Overrides:
containsKey in class AbstractInt2ReferenceFunction<V>
Parameters:
ok - the key.
Returns:
true if this function associates a value to key.
See Also:
Map.containsKey(Object)

remove

public V remove(Object k)
Description copied from class: AbstractInt2ReferenceFunction
Delegates to the corresponding type-specific method, taking care of returning null on a missing key.

This method must check whether the provided key is in the map using containsKey(). Thus, it probes the map twice. Implementors of subclasses should override it with a more efficient method.

Specified by:
remove in interface Function<Integer,V>
Overrides:
remove in class AbstractInt2ReferenceFunction<V>
Returns:
the old value, or null if no value was present for the given key.
See Also:
Map.remove(Object)

get

public V get(Object k)
Description copied from class: AbstractInt2ReferenceFunction
Delegates to the corresponding type-specific method, taking care of returning null on a missing key.

This method must check whether the provided key is in the map using containsKey(). Thus, it probes the map twice. Implementors of subclasses should override it with a more efficient method.

Specified by:
get in interface Function<Integer,V>
Overrides:
get in class AbstractInt2ReferenceFunction<V>
Parameters:
k - the key.
Returns:
the corresponding value, or null if no value was present for the given key.
See Also:
Map.get(Object)


Copyright © 2011. All Rights Reserved.