CombinedMapView<K, V> class

Returns a new map that represents maps flattened into a single map.

All methods and accessors treat the new map as-if it were a single concatenated map, but the underlying implementation is based on lazily accessing individual map instances. In the occasion where a key occurs in multiple maps the first value is returned.

The resulting map has an index operator ([]) that is O(maps), rather than O(1), and the map is unmodifiable, but underlying changes to these maps are still accessible from the resulting map.

The length getter is O(M) where M is the total number of entries in all maps, since it has to remove duplicate entries.

Inheritance

Constructors

CombinedMapView(Iterable<Map<K, V>> _maps)
Create a new combined view of multiple maps.

Properties

entries → Iterable<MapEntry<K, V>>
The map entries of this Map.
no setterinherited
hashCode → int
The hash code for this object.
no setterinherited
isEmpty → bool
Whether there is no key/value pair in the map.
no setterinherited
isNotEmpty → bool
Whether there is at least one key/value pair in the map.
no setterinherited
keys → Iterable<K>
The keys of this.
no setteroverride
length → int
The number of key/value pairs in the map.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
values → Iterable<V>
The values of this Map.
no setterinherited

Methods

addAll(Map<K, V> other) → void
This operation is not supported by an unmodifiable map.
inherited
addEntries(Iterable<MapEntry<K, V>> entries) → void
This operation is not supported by an unmodifiable map.
inherited
cast<RK, RV>() → Map<RK, RV>
Provides a view of this map as having RK keys and RV instances, if necessary.
inherited
clear() → void
This operation is not supported by an unmodifiable map.
inherited
containsKey(Object? key) → bool
Whether this map contains the given key.
inherited
containsValue(Object? value) → bool
Whether this map contains the given value.
inherited
forEach(void action(K key, V value)) → void
Applies action 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 convert function.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent 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
This operation is not supported by an unmodifiable map.
inherited
toString() → String
A string representation of this object.
inherited
update(K key, V update(V value), {V ifAbsent()?}) → V
This operation is not supported by an unmodifiable map.
inherited
updateAll(V update(K key, V value)) → void
This operation is not supported by an unmodifiable map.
inherited

Operators

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