prefer_iterable_wheretype
Use 'whereType' to select elements of a given type.
Description
#The analyzer produces this diagnostic when the method Iterable.where
is
being used to filter elements based on their type.
Example
#The following code produces this diagnostic because the method where
is
being used to access only the strings within the iterable:
dart
Iterable<Object> f(Iterable<Object> p) => p.where((e) => e is String);
Common fixes
#Rewrite the code to use whereType
:
dart
Iterable<String> f(Iterable<Object> p) => p.whereType<String>();
This might also allow you to tighten the types in your code or remove other type checks.