Basic implementation of an unmodifiable Map.

This class has a basic implementation of all but two of the members of an umodifiable Map. A simple unmodifiable Map class can be implemented by extending this class and implementing keys and operator[].

Modifying operations throw when used. The remaining non-modifying operations are implemented in terms of keys and operator[].

The keys iterable should have efficient length and contains operations, and it should catch concurrent modifications of the keys while iterating.

A more efficient implementation is usually possible by overriding some of the other members as well.

Extends

Properties

bool isEmpty
read-only, inherited
bool isNotEmpty
read-only, inherited
Iterable<K> keys
read-only, inherited
int length
read-only, inherited
Iterable<V> values
read-only, inherited

Constructors

UnmodifiableMapBase()
const

Operators

operator [](Object key) → V
inherited
Returns the value for the given key or null if key is not in the map.
operator []=(K key, V value) → void
inherited
Associates the key with the given value.

Methods

addAll(Map<K,V> other) → void
inherited
Adds all key-value pairs of other to this map.
clear() → void
inherited
Removes all pairs from the map.
containsKey(Object key) → bool
inherited
Returns true if this map contains the given key.
containsValue(V value) → bool
inherited
Returns true if this map contains the given value.
forEach(void action(K key, V value)) → void
inherited
Applies f to each key-value pair of the map.
putIfAbsent(K key, V ifAbsent()) → V
inherited
Look up the value of key, or add a new value if it isn't there.
remove(Object key) → V
inherited
Removes key and its associated value, if present, from the map.
toString() → String
inherited
Returns a string representation of this object.