Mixin implementing a Map.

This mixin has a basic implementation of all but five of the members of Map. A basic Map class can be implemented by mixin in this class and implementing keys, operator[], operator[]=, remove and clear. The remaining operations are implemented in terms of these five.

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.

Implements
Implemented by

Properties

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

Constructors

MapMixin()

Operators

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

Methods

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