edu.rice.cs.plt.collect
Class ImmutableMap<K,V>
java.lang.Object
edu.rice.cs.plt.collect.ImmutableMap<K,V>
- All Implemented Interfaces:
- LambdaMap<K,V>, Lambda<K,V>, Composite, Serializable, Map<K,V>
public class ImmutableMap<K,V>
- extends Object
- implements LambdaMap<K,V>, Composite, Serializable
Wraps a map in an immutable interface. Similar to Collections.unmodifiableMap(java.util.Map extends K, ? extends V>),
but this class also implements LambdaMap. Note that only only this
interface with the data is immutable -- if the original data structure is mutable, a client with direct
access to that structure can still mutate it.
- See Also:
- Serialized Form
| Nested classes/interfaces inherited from interface java.util.Map |
Map.Entry<K,V> |
_delegate
protected Map<? extends K,? extends V> _delegate
ImmutableMap
public ImmutableMap(Map<? extends K,? extends V> map)
compositeHeight
public int compositeHeight()
- Description copied from interface:
Composite
- Get the maximum path length from this node to a leaf.
- Specified by:
compositeHeight in interface Composite
compositeSize
public int compositeSize()
- Description copied from interface:
Composite
- Get the number of nodes in the tree rooted at this node. Always 1 or greater.
- Specified by:
compositeSize in interface Composite
size
public int size()
- Specified by:
size in interface Map<K,V>
isEmpty
public boolean isEmpty()
- Specified by:
isEmpty in interface Map<K,V>
get
public V get(Object key)
- Specified by:
get in interface Map<K,V>
value
public V value(K key)
- Specified by:
value in interface Lambda<K,V>
containsKey
public boolean containsKey(Object o)
- Specified by:
containsKey in interface Map<K,V>
containsValue
public boolean containsValue(Object o)
- Specified by:
containsValue in interface Map<K,V>
keySet
public PredicateSet<K> keySet()
- Specified by:
keySet in interface LambdaMap<K,V>- Specified by:
keySet in interface Map<K,V>
values
public Collection<V> values()
- Specified by:
values in interface Map<K,V>
entrySet
public Set<Map.Entry<K,V>> entrySet()
- Specified by:
entrySet in interface Map<K,V>
put
public V put(K key,
V value)
- Specified by:
put in interface Map<K,V>
putAll
public void putAll(Map<? extends K,? extends V> t)
- Specified by:
putAll in interface Map<K,V>
remove
public V remove(Object key)
- Specified by:
remove in interface Map<K,V>
clear
public void clear()
- Specified by:
clear in interface Map<K,V>
toString
public String toString()
- Overrides:
toString in class Object
equals
public boolean equals(Object o)
- Specified by:
equals in interface Map<K,V>- Overrides:
equals in class Object
hashCode
public int hashCode()
- Specified by:
hashCode in interface Map<K,V>- Overrides:
hashCode in class Object
make
public static <K,V> ImmutableMap<K,V> make(Map<? extends K,? extends V> map)
- Call the constructor (allows
K and V to be inferred).