filter<K, V> method

Map<K, V> filter<K, V>(
  1. bool predicate(
    1. K key,
    2. V value
    )
)

Returns a new map with all entries that satisfy the given predicate. The entries in the resulting map preserve the order of the original map.

Implementation

Map<K, V> filter<K, V>(bool Function(K key, V value) predicate) {
  final map = <K, V>{};
  for (final key in keys) {
    if (predicate(key as K, this[key] as V)) {
      map[key] = this[key] as V;
    }
  }
  return map;
}