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

constant_pattern_never_matches_value_type

一致する値の型「{0}」は、型「{1}」のこの定数と決して一致しません。

説明

#

定数の型が、値の型と決して一致しないことがわかっているため、定数パターンがテスト対象の値と決して一致しない場合に、アナライザーはこの診断を生成します。

#

次のコードは、定数パターン(true)の型がboolであり、一致する値(x)の型がintであり、ブール値は整数と一致しないため、この診断を生成します。

dart
void f(int x) {
  if (x case true) {}
}

一般的な修正

#

値の型が正しい場合は、互換性のあるパターンに書き換えてください。

dart
void f(int x) {
  if (x case 3) {}
}

定数の型が正しい場合は、互換性のある値に書き換えてください。

dart
void f(bool x) {
  if (x case true) {}
}