SplayTreeMap<K, V>.fromIterable constructor Null safety

SplayTreeMap<K, V>.fromIterable(
  1. Iterable iterable,
  2. {K key(
    1. dynamic element
    )?,
  3. V value(
    1. dynamic element
    )?,
  4. int compare(
    1. K key1,
    2. K key2
    )?,
  5. bool isValidKey(
    1. dynamic potentialKey
    )?}
)

Creates a SplayTreeMap where the keys and values are computed from the iterable.

For each element of the iterable this constructor computes a key/value pair, by applying key and value respectively.

The keys of the key/value pairs do not need to be unique. The last occurrence of a key will simply overwrite any previous value.

If no functions are specified for key and value the default is to use the iterable value itself.

Implementation

factory SplayTreeMap.fromIterable(Iterable iterable,
    {K Function(dynamic element)? key,
    V Function(dynamic element)? value,
    int Function(K key1, K key2)? compare,
    bool Function(dynamic potentialKey)? isValidKey}) {
  SplayTreeMap<K, V> map = SplayTreeMap<K, V>(compare, isValidKey);
  MapBase._fillMapWithMappedIterable(map, iterable, key, value);
  return map;
}