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 Iterable.length and Iterable.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.

Inheritance

Constructors

UnmodifiableMapBase()

Properties

hashCode int
The hash code for this object. [...]
read-only, inherited
isEmpty bool
read-only, inherited
isNotEmpty bool
read-only, inherited
keys Iterable<K>
read-only, inherited
length int
read-only, inherited
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
values Iterable<V>
read-only, inherited

Methods

addAll(Map<K, V> other) → void
This operation is not supported by an unmodifiable map.
inherited
clear() → void
This operation is not supported by an unmodifiable map.
inherited
containsKey(Object key) bool
Returns true if this map contains the given key. [...]
inherited
containsValue(Object value) bool
Returns true if this map contains the given value. [...]
inherited
forEach(void action(K key, V value)) → void
Applies f to each key-value pair of the map. [...]
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
putIfAbsent(K key, V ifAbsent()) → V
This operation is not supported by an unmodifiable map.
inherited
remove(Object key) → V
This operation is not supported by an unmodifiable map.
inherited
toString() String
Returns a string representation of this object.
inherited

Operators

operator ==(other) bool
The equality operator. [...]
inherited
operator [](Object key) → V
Returns the value for the given key or null if key is not in the map. [...]
inherited
operator []=(K key, V value) → void
This operation is not supported by an unmodifiable map.
inherited