missing_enum_constant_in_switch
'{0}' の case 節がありません。
説明
#enum の switch ステートメントに enum の値のいずれかのオプションが含まれていない場合に、アナライザーがこの診断を生成します。
null は常に enum の可能な値であり、そのため処理する必要があることに注意してください。
例
#以下のコードは、enum の値 e2 が処理されていないため、この診断を生成します。
dart
enum E { e1, e2 }
void f(E e) {
switch (e) {
case E.e1:
break;
}
}一般的な修正
#欠落している値に特別な処理がある場合は、欠落している各値に対して case 節を追加してください。
dart
enum E { e1, e2 }
void f(E e) {
switch (e) {
case E.e1:
break;
case E.e2:
break;
}
}欠落している値を同じように処理する場合は、default 節を追加してください。
dart
enum E { e1, e2 }
void f(E e) {
switch (e) {
case E.e1:
break;
default:
break;
}
}