modifyAt method
If the given key is present in the Map, then modify its value
using update and return the Map.
If multiple keys equal to key exist in the map, all of them are updated.
Otherwise, return None.
Implementation
Option<Map<K, V>> modifyAt(
Eq<K> eq,
V Function(V value) update,
K key,
) {
for (final entryKey in keys) {
if (eq.eqv(entryKey, key)) {
// At least one equal key exists in map.
return some({
for (final entry in entries)
entry.key:
eq.eqv(entry.key, key) ? update(entry.value) : entry.value
});
}
}
return const None();
}