Package it.unimi.dsi.fastutil.objects
Class Reference2ReferenceFunctions
- java.lang.Object
-
- it.unimi.dsi.fastutil.objects.Reference2ReferenceFunctions
-
public final class Reference2ReferenceFunctions extends Object
A class providing static methods and objects that do useful things with type-specific functions.- See Also:
Function
,Collections
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Reference2ReferenceFunctions.EmptyFunction<K,V>
An immutable class representing an empty type-specific function.static class
Reference2ReferenceFunctions.Singleton<K,V>
An immutable class representing a type-specific singleton function.static class
Reference2ReferenceFunctions.SynchronizedFunction<K,V>
A synchronized wrapper class for functions.static class
Reference2ReferenceFunctions.UnmodifiableFunction<K,V>
An unmodifiable wrapper class for functions.
-
Field Summary
Fields Modifier and Type Field Description static Reference2ReferenceFunctions.EmptyFunction
EMPTY_FUNCTION
An empty type-specific function (immutable).
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <K,V>
Reference2ReferenceFunction<K,V>singleton(K key, V value)
Returns a type-specific immutable function containing only the specified pair.static <K,V>
Reference2ReferenceFunction<K,V>synchronize(Reference2ReferenceFunction<K,V> f)
Returns a synchronized type-specific function backed by the given type-specific function.static <K,V>
Reference2ReferenceFunction<K,V>synchronize(Reference2ReferenceFunction<K,V> f, Object sync)
Returns a synchronized type-specific function backed by the given type-specific function, using an assigned object to synchronize.static <K,V>
Reference2ReferenceFunction<K,V>unmodifiable(Reference2ReferenceFunction<K,V> f)
Returns an unmodifiable type-specific function backed by the given type-specific function.
-
-
-
Field Detail
-
EMPTY_FUNCTION
public static final Reference2ReferenceFunctions.EmptyFunction EMPTY_FUNCTION
An empty type-specific function (immutable). It is serializable and cloneable.
-
-
Method Detail
-
singleton
public static <K,V> Reference2ReferenceFunction<K,V> singleton(K key, V value)
Returns a type-specific immutable function containing only the specified pair. The returned function is serializable and cloneable.Note that albeit the returned function is immutable, its default return value may be changed.
- Parameters:
key
- the only key of the returned function.value
- the only value of the returned function.- Returns:
- a type-specific immutable function containing just the pair
<key,value>
.
-
synchronize
public static <K,V> Reference2ReferenceFunction<K,V> synchronize(Reference2ReferenceFunction<K,V> f)
Returns a synchronized type-specific function backed by the given type-specific function.- Parameters:
f
- the function to be wrapped in a synchronized function.- Returns:
- a synchronized view of the specified function.
- See Also:
Collections.synchronizedMap(java.util.Map)
-
synchronize
public static <K,V> Reference2ReferenceFunction<K,V> synchronize(Reference2ReferenceFunction<K,V> f, Object sync)
Returns a synchronized type-specific function backed by the given type-specific function, using an assigned object to synchronize.- Parameters:
f
- the function to be wrapped in a synchronized function.sync
- an object that will be used to synchronize the access to the function.- Returns:
- a synchronized view of the specified function.
- See Also:
Collections.synchronizedMap(java.util.Map)
-
unmodifiable
public static <K,V> Reference2ReferenceFunction<K,V> unmodifiable(Reference2ReferenceFunction<K,V> f)
Returns an unmodifiable type-specific function backed by the given type-specific function.- Parameters:
f
- the function to be wrapped in an unmodifiable function.- Returns:
- an unmodifiable view of the specified function.
- See Also:
Collections.unmodifiableMap(java.util.Map)
-
-