UnmodifiableMapBase<K, V> class
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.
Constructors
Properties
-
entries
→ Iterable<
MapEntry< K, V> > -
The map entries of this.
read-only, inherited
- hashCode → int
-
The hash code for this object. [...]
read-only, inherited
- isEmpty → bool
-
Returns true if there is no key/value pair in the map.
read-only, inherited
- isNotEmpty → bool
-
Returns true if there is at least one key/value pair in the map.
read-only, inherited
-
keys
→ Iterable<
K> -
The keys of this. [...]
read-only, inherited
- length → int
-
The number of key/value pairs in the map.
read-only, inherited
- runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited
-
values
→ Iterable<
V> -
The values of this. [...]
read-only, inherited
Methods
-
addAll(
Map< K, V> other) → void -
This operation is not supported by an unmodifiable map.
inherited
-
addEntries(
Iterable< MapEntry< newEntries) → voidK, V> > -
Adds all key/value pairs of
newEntries
to this map. [...]inherited -
cast<
RK, RV> () → Map< RK, RV> -
Provides a view of this map as having
RK
keys andRV
instances, if necessary. [...]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 -
map<
K2, V2> (MapEntry< K2, V2> transform(K key, V value)) → Map<K2, V2> -
Returns a new map where all entries of this map are transformed by
the given
f
function.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
-
removeWhere(
bool test(K key, V value)) → void -
Removes all entries of this map that satisfy the given
predicate
.inherited -
toString(
) → String -
Returns a string representation of this object.
inherited
-
update(
K key, V update(V value), { V ifAbsent() }) → V -
Updates the value for the provided
key
. [...]inherited -
updateAll(
V update(K key, V value)) → void -
Updates all values. [...]
inherited
Operators
-
operator ==(
dynamic other) → bool -
The equality operator. [...]
inherited
-
operator [](
Object key) → V -
Returns the value for the given
key
or null ifkey
is not in the map. [...]inherited -
operator []=(
K key, V value) → void -
This operation is not supported by an unmodifiable map.
inherited