it.unimi.dsi.fastutil.objects
Class AbstractReference2LongFunction<K>
java.lang.Object
it.unimi.dsi.fastutil.objects.AbstractReference2LongFunction<K>
- All Implemented Interfaces:
- Function<K,java.lang.Long>, Reference2LongFunction<K>, java.io.Serializable
- Direct Known Subclasses:
- AbstractReference2LongMap, Reference2LongFunctions.EmptyFunction, Reference2LongFunctions.Singleton, Reference2LongFunctions.SynchronizedFunction, Reference2LongFunctions.UnmodifiableFunction
public abstract class AbstractReference2LongFunction<K>
- extends java.lang.Object
- implements Reference2LongFunction<K>, java.io.Serializable
An abstract class providing basic methods for functions implementing a type-specific interface.
Optional operations just throw an UnsupportedOperationException
. Generic versions of accessors delegate to
the corresponding type-specific counterparts following the interface rules
(they take care of returning null
on a missing key).
This class handles directly a default return
value (including methods to access
it). Instances of classes inheriting from this class have just to return
defRetValue
to denote lack of a key in type-specific methods. The value
is serialized.
Implementing subclasses have just to provide type-specific get()
,
type-specific containsKey()
, and size() methods.
- See Also:
- Serialized Form
Method Summary |
void |
clear()
Removes all associations from this function (optional operation). |
long |
defaultReturnValue()
Gets the default return value. |
void |
defaultReturnValue(long rv)
Sets the default return value. |
java.lang.Long |
get(java.lang.Object ok)
Delegates to the corresponding type-specific method, taking care of returning null on a missing key. |
long |
put(K key,
long value)
Adds a pair to the map. |
java.lang.Long |
put(K ok,
java.lang.Long ov)
Delegates to the corresponding type-specific method, taking care of returning null on a missing key. |
java.lang.Long |
remove(java.lang.Object ok)
Delegates to the corresponding type-specific method, taking care of returning null on a missing key. |
long |
removeLong(java.lang.Object key)
Removes the mapping with the given key. |
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
defaultReturnValue
public void defaultReturnValue(long rv)
- Description copied from interface:
Reference2LongFunction
- 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 Reference2LongFunction<K>
- Parameters:
rv
- the new default return value.- See Also:
Reference2LongFunction.defaultReturnValue()
defaultReturnValue
public long defaultReturnValue()
- Description copied from interface:
Reference2LongFunction
- Gets the default return value.
- Specified by:
defaultReturnValue
in interface Reference2LongFunction<K>
- Returns:
- the current default return value.
put
public long put(K key,
long value)
- Description copied from interface:
Reference2LongFunction
- Adds a pair to the map.
- Specified by:
put
in interface Reference2LongFunction<K>
- Parameters:
key
- the key.value
- 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)
removeLong
public long removeLong(java.lang.Object key)
- Description copied from interface:
Reference2LongFunction
- Removes the mapping with the given key.
- Specified by:
removeLong
in interface Reference2LongFunction<K>
- 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,java.lang.Long>
- See Also:
Map.clear()
get
public java.lang.Long get(java.lang.Object ok)
- 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<K,java.lang.Long>
- Parameters:
ok
- the key.
- Returns:
- the corresponding value, or
null
if no value was present for the given key. - See Also:
Map.get(Object)
put
public java.lang.Long put(K ok,
java.lang.Long ov)
- 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:
put
in interface Function<K,java.lang.Long>
- Parameters:
ok
- the key.ov
- the value.
- Returns:
- the old value, or
null
if no value was present for the given key. - See Also:
Map.put(Object,Object)
remove
public java.lang.Long remove(java.lang.Object ok)
- 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<K,java.lang.Long>
- Returns:
- the old value, or
null
if no value was present for the given key. - See Also:
Map.remove(Object)