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

unreachable_switch_default

この default 節は、前のケースによって網羅されています。

説明

#

switch ステートメントの default 節が、一致可能なすべての値がそれより前の case 節によって一致しているため、何も一致しない場合に、アナライザーはこの診断を生成します。

#

次のコードは、値 E.e1 および E.e2 が先行するケースで一致しているため、この診断を生成します。

dart
enum E { e1, e2 }

void f(E x) {
  switch (x) {
    case E.e1:
      print('one');
    case E.e2:
      print('two');
    default:
      print('other');
  }
}

一般的な修正

#

不要な default 節を削除する

dart
enum E { e1, e2 }
void f(E x) {
  switch (x) {
    case E.e1:
      print('one');
    case E.e2:
      print('two');
  }
}