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

void_checks

void 型の変数への代入。

説明

#

analyzer がこの診断を生成するのは、値が void 型の変数に代入される場合です。

そのような変数の値にアクセスすることはできないため、代入には値がありません。

#

以下のコードは、フィールド valuevoid 型であるにもかかわらず、値が代入されているため、この診断を生成します。

dart
class A<T> {
  T? value;
}

void f(A<void> a) {
  a.value = 1;
}

以下のコードは、メソッド m のパラメータ p の型が void であるにもかかわらず、呼び出し時に値が代入されているため、この診断を生成します。

dart
class A<T> {
  void m(T p) { }
}

void f(A<void> a) {
  a.m(1);
}

一般的な修正

#

変数の型が間違っている場合は、変数の型を変更してください。

dart
class A<T> {
  T? value;
}

void f(A<int> a) {
  a.value = 1;
}

変数の型が正しい場合は、代入を削除してください。

dart
class A<T> {
  T? value;
}

void f(A<void> a) {}