ModifiableMapFromIMap<K, V> class
The ModifiableMapFromIMap is a safe, modifiable Map that is built from an IMap. The construction of the map is fast at first, since it makes no copies of the IMap items, but just uses it directly.
If and only if you use a method that mutates the map, like add, it will unlock internally (make a copy of all IMap items). This is transparent to you, and will happen at most only once. In other words, it will unlock the IMap, lazily, only if necessary.
If you never mutate the map, it will be very fast to lock this map back into an IMap.
See also: UnmodifiableMapFromIMap
- Implemented types
-
- Map<
K, V> - CanBeEmpty
- Map<
- Mixed-in types
-
- MapMixin<
K, V>
- MapMixin<
- Available extensions
Constructors
-
ModifiableMapFromIMap.new(IMap<
K, V> ? imap)
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 Map.
no setteroverride
- length → int
-
The number of key/value pairs in the map.
no setterinherited
-
lock
→ IMap<
K, V> -
no setter
-
lock
→ IMap<
K, V> -
Available on Map<
Locks the map, returning an immutable map (IMap).K, V> , provided by the FicMapExtension extensionno setter -
lock
→ IMapOfSets<
K, V> -
Available on Map<
Locks the map of sets, returning an immutable map (IMapOfSets).K, Set< , provided by the FicMapOfSetsExtension extensionV> >no setter -
lockUnsafe
→ IMap<
K, V> -
Available on Map<
Locks the map, returning an immutable map (IMap).K, V> , provided by the FicMapExtension extensionno setter - runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- size → int
-
Available on Map<
Return number of elements in the Map (K, V> , provided by the ElementalOnMap extensionkeys.length
).no setter -
values
→ Iterable<
V> -
The values of this Map.
no setterinherited
Methods
-
addAll(
Map< K, V> other) → void -
Adds all key/value pairs of
other
to this 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 -
Removes all entries from the map.
override
-
collect<
A> (Order< K> order, A compose(K key, V value)) → Iterable<A> -
Available on Map<
Collect all the entries in this Map into an Iterable usingK, V> , provided by the ElementalOnMap extensioncompose
, with the values ordered usingorder
. -
containsKey(
Object? key) → bool -
Whether this map contains the given
key
.inherited -
containsValue(
Object? value) → bool -
Whether this map contains the given
value
.inherited -
extract<
T> (K key) → Option< T> -
Available on Map<
Return an Option that conditionally accesses map keys, only if they match the given type.K, V> , provided by the ElementalOnMap extension -
extractMap(
K key) → Option< Map< K, dynamic> > -
Available on Map<
Return an Option that conditionally accesses map keys if they contain a value with a Map value.K, V> , provided by the ElementalOnMap extension -
filter(
bool test(V value)) → Map< K, V> -
Available on Map<
Returns a new Map containing all the elements of this Map where the value satisfiesK, V> , provided by the ElementalOnMap extensiontest
. -
filterWithIndex(
bool test(V value, int index)) → Map< K, V> -
Available on Map<
Returns a new Map containing all the elements of this Map where the value satisfiesK, V> , provided by the ElementalOnMap extensiontest
. -
filterWithKey(
bool test(K key, V value)) → Map< K, V> -
Available on Map<
Returns a new Map containing all the elements of this Map where key/value satisfiesK, V> , provided by the ElementalOnMap extensiontest
. -
filterWithKeyAndIndex(
bool test(K key, V value, int index)) → Map< K, V> -
Available on Map<
Returns a new Map containing all the elements of this Map where key/value satisfiesK, V> , provided by the ElementalOnMap extensiontest
. -
foldLeft<
A> (Order< K> order, A initial, A compose(A acc, V value)) → A -
Available on Map<
ApplyK, V> , provided by the ElementalOnMap extensioncompose
to all the values of this Map sorted based onorder
on their key, and return the result of combining all the intermediate values. -
foldLeftWithIndex<
A> (Order< K> order, A initial, A compose(A acc, V value, int index)) → A -
Available on Map<
ApplyK, V> , provided by the ElementalOnMap extensioncompose
to all the values of this Map sorted based onorder
on their key, passing also the current index of the iteration, and return the result of combining all the intermediate values. -
foldLeftWithKey<
A> (Order< K> order, A initial, A compose(A acc, K key, V value)) → A -
Available on Map<
ApplyK, V> , provided by the ElementalOnMap extensioncompose
to all the values of this Map sorted based onorder
on their key, and return the result of combining all the intermediate values. -
foldLeftWithKeyAndIndex<
A> (Order< K> order, A initial, A compose(A acc, K key, V value, int index)) → A -
Available on Map<
ApplyK, V> , provided by the ElementalOnMap extensioncompose
to all the values of this Map sorted based onorder
on their key, passing also the current index of the iteration, and return the result of combining all the intermediate values. -
foldRight<
A> (Order< K> order, A initial, A compose(V value, A acc)) → A -
Available on Map<
ApplyK, V> , provided by the ElementalOnMap extensioncompose
to all the values of this Map sorted based on the inverse oforder
on their key, and return the result of combining all the intermediate values. -
foldRightWithIndex<
A> (Order< K> order, A initial, A compose(V value, A acc, int index)) → A -
Available on Map<
ApplyK, V> , provided by the ElementalOnMap extensioncompose
to all the values of this Map sorted based on the inverse oforder
on their key, passing also the current index of the iteration, and return the result of combining all the intermediate values. -
foldRightWithKey<
A> (Order< K> order, A initial, A compose(K key, V value, A acc)) → A -
Available on Map<
ApplyK, V> , provided by the ElementalOnMap extensioncompose
to all the values of this Map sorted based on the inverse oforder
on their key, and return the result of combining all the intermediate values. -
foldRightWithKeyAndIndex<
A> (Order< K> order, A initial, A compose(K key, V value, A acc, int index)) → A -
Available on Map<
ApplyK, V> , provided by the ElementalOnMap extensioncompose
to all the values of this Map sorted based on the inverse oforder
on their key, passing also the current index of the iteration, and return the result of combining all the intermediate values. -
forEach(
void action(K key, V value)) → void -
Applies
action
to each key/value pair of the map.inherited -
lookup(
K key) → Option< V> -
Available on Map<
Get the value at givenK, V> , provided by the ElementalOnMap extensionkey
if present, otherwise return None. -
lookupWithKey(
K key) → Option< (K, V)> -
Available on Map<
Get the value and key at givenK, V> , provided by the ElementalOnMap extensionkey
if present, otherwise return None. -
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 -
mapTo<
T> (T mapper(K key, V value)) → Iterable< T> -
Available on Map<
Returns a new lazy Iterable with elements that are created by callingK, V> , provided by the FicMapExtension extensionmapper
on each entry of thisMap
in iteration order. -
mapValue<
A> (A update(V value)) → Map< K, A> -
Available on Map<
Convert each value of the Map using theK, V> , provided by the ElementalOnMap extensionupdate
function and returns a new Map. -
mapWithIndex<
A> (A update(V value, int index)) → Map< K, A> -
Available on Map<
Convert each value of the Map using theK, V> , provided by the ElementalOnMap extensionupdate
function and returns a new Map. -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
putIfAbsent(
K key, V ifAbsent()) → V -
Look up the value of
key
, or add a new entry if it isn't there.inherited -
remove(
Object? key) → V? -
Removes
key
and its associated value, if present, from the map.override -
removeWhere(
bool test(K key, V value)) → void -
Removes all entries of this map that satisfy the given
test
.inherited -
toIMap(
[ConfigMap? config]) → IMap< K, V> -
Available on Map<
Creates an immutable map (IMap) from the map.K, V> , provided by the FicMapExtension extension -
toIMapOfSets(
[ConfigMapOfSets? config]) → IMapOfSets< K, V> ? -
Available on Map<
Creates an immutable map of sets (IMapOfSets) from the map.K, Set< , provided by the FicMapOfSetsExtension extensionV> > -
toSortedList(
Order< K> order) → List<MapEntry< K, V> > -
Available on Map<
Get a sorted List of the key/value pairs contained in this Map based onK, V> , provided by the ElementalOnMap extensionorder
on keys. -
toString(
) → String -
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 ==(
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 -
Associates the
key
with the givenvalue
.override