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
Available extensions

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
noneIfEmpty → Option<Map<K, V>>

Available on Map<K, V>, provided by the MapExt extension

Returns this map wrapped in a Some if it's not empty, otherwise returns None.
no setter
okValues → Map<K, V>

Available on Map<K, Result<V>>, provided by the MapOfResults extension

Returns a new map containing only the unwrapped values from Ok entries.
no setter
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
someValues → Map<K, V>

Available on Map<K, Option<V>>, provided by the MapOfOptions extension

Returns a new map containing only the unwrapped values from Some entries.
no setter
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
getOption(K key) → Option<V>

Available on Map<K, V>, provided by the MapExt extension

Safely gets the value for a given key, returning an Option.
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
partition() → MapOptionPartition<K, V>

Available on Map<K, Option<V>>, provided by the MapOfOptions extension

Partitions the map into a record containing two maps: one for Some values and one for None values.
partition() → MapResultPartition<K, V>

Available on Map<K, Result<V>>, provided by the MapOfResults extension

Partitions the map into a record containing two maps: one for Ok values and one for Err values.
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
sequence() → Option<Map<K, V>>

Available on Map<K, Option<V>>, provided by the MapOfOptions extension

Turns a Map<K, Option<V>> into an Option<Map<K, V>>. If all values are Some, it returns a Some<Map<K, V>>. If any value is a None, it returns None.
sequence() → Result<Map<K, V>>

Available on Map<K, Result<V>>, provided by the MapOfResults extension

Turns a Map<K, Result<V>> into a Result<Map<K, V>>. If all values are Ok, it returns an Ok<Map<K, V>>. If any value is an Err, it returns the first Err encountered.
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
whereErr() → Map<K, Err<V>>

Available on Map<K, Result<V>>, provided by the MapOfResults extension

Creates a new map containing only the entries where the value is an Err. The values in the new map are instances of Err<V>.
whereNone() → Map<K, None<V>>

Available on Map<K, Option<V>>, provided by the MapOfOptions extension

Creates a new map containing only the entries where the value is a None.
whereOk() → Map<K, Ok<V>>

Available on Map<K, Result<V>>, provided by the MapOfResults extension

Creates a new map containing only the entries where the value is an Ok. The values in the new map are instances of Ok<V>.
whereSome() → Map<K, Some<V>>

Available on Map<K, Option<V>>, provided by the MapOfOptions extension

Creates a new map containing only the entries where the value is a Some. The values in the new map are instances of Some<V>.

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