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

implicit_call_tearoffs

'call' メソッドの暗黙的な tear-off。

説明

#

call メソッドを持つオブジェクトが関数型の変数に代入され、call メソッドが暗黙的に tear-off される場合に、アナライザーはこの診断を生成します。

#

次のコードは、Callable のインスタンスが Function を期待する関数に渡されるため、この診断を生成します。

dart
class Callable {
  void call() {}
}

void callIt(void Function() f) {
  f();
}

void f() {
  callIt(Callable());
}

一般的な修正

#

call メソッドを明示的に tear-off する

dart
class Callable {
  void call() {}
}

void callIt(void Function() f) {
  f();
}

void f() {
  callIt(Callable().call);
}