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
-
- Object
- MapBase<
K, V> - UnmodifiableMapBase<
K, V> - CombinedMapView
- Available extensions
Constructors
-
CombinedMapView.new(Iterable<
Map< _maps)K, V> > - 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<
Returns this map wrapped in a Some if it's not empty, otherwise returns None.K, V> , provided by the MapExt extensionno setter -
okValues
→ Map<
K, V> -
Available on Map<
Returns a new map containing only the unwrapped values from Ok entries.K, Result< , provided by the MapOfResults extensionV> >no setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
someValues
→ Map<
K, V> -
Available on Map<
Returns a new map containing only the unwrapped values from Some entries.K, Option< , provided by the MapOfOptions extensionV> >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< entries) → voidK, V> > -
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 andRV
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<
Safely gets the value for a givenK, V> , provided by the MapExt extensionkey
, 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<
Partitions the map into a record containing two maps: one for Some values and one for None values.K, Option< , provided by the MapOfOptions extensionV> > -
partition(
) → MapResultPartition< K, V> -
Available on Map<
Partitions the map into a record containing two maps: one for Ok values and one for Err values.K, Result< , provided by the MapOfResults extensionV> > -
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<
Turns aK, Option< , provided by the MapOfOptions extensionV> >Map<K, Option<V>>
into anOption<Map<K, V>>
. If all values are Some, it returns aSome<Map<K, V>>
. If any value is a None, it returns None. -
sequence(
) → Result< Map< K, V> > -
Available on Map<
Turns aK, Result< , provided by the MapOfResults extensionV> >Map<K, Result<V>>
into aResult<Map<K, V>>
. If all values are Ok, it returns anOk<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<
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>.K, Result< , provided by the MapOfResults extensionV> > -
whereNone(
) → Map< K, None< V> > -
Available on Map<
Creates a new map containing only the entries where the value is a None.K, Option< , provided by the MapOfOptions extensionV> > -
whereOk(
) → Map< K, Ok< V> > -
Available on Map<
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>.K, Result< , provided by the MapOfResults extensionV> > -
whereSome(
) → Map< K, Some< V> > -
Available on Map<
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>.K, Option< , provided by the MapOfOptions extensionV> >
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
-
operator [](
Object? key) → V? -
The value for the given
key
, ornull
ifkey
is not in the map.override -
operator []=(
K key, V value) → void -
This operation is not supported by an unmodifiable map.
inherited