メインコンテンツにスキップ

avoid_function_literals_in_foreach_calls

Function literals を 'forEach' に渡すべきではありません。

説明

#

Iterable.forEach の引数がクロージャである場合、アナライザーはこの診断を生成します。

#

以下のコードは、forEach の呼び出しの引数がクロージャであるため、この診断を生成します。

dart
void f(Iterable<String> s) {
  s.forEach((e) => print(e));
}

一般的な修正

#

クロージャを tear-off で置き換えることができる場合は、クロージャを置き換えてください。

dart
void f(Iterable<String> s) {
  s.forEach(print);
}

クロージャを tear-off で置き換えることができない場合は、for ループを使用して要素を反復処理してください。

dart
void f(Iterable<String> s) {
  for (var e in s) {
    print(e);
  }
}