prefer_ for_ elements_ to_ map_ fromiterable
Use 'for' elements when building maps from iterables.
Description
#
The analyzer produces this diagnostic when
Map.fromIterable
is used to
build a map that could be built using the
for
element.
Example
#
The following code produces this diagnostic because
fromIterable
is
being used to build a map that could be built using a
for
element:
void f(Iterable<String> data) {
Map<String, int>.fromIterable(
data,
key: (element) => element,
value: (element) => element.length,
);
}
Common fixes
#Use a for
element to build the map:
void f(Iterable<String> data) {
<String, int>{
for (var element in data)
element: element.length
};
}
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Page last updated on 2025-9-1. View source or report an issue.