missing_ enum_ constant_ in_ switch
Detalhes sobre o diagnóstico 'missing_enum_constant_in_switch' produzido pelo analisador do Dart.
Missing case clause for '{0}'.
Descrição
#
O analisador gera este diagnóstico quando uma instrução switch para um enum não inclui uma opção para um dos valores do enum.
Observe que null é sempre um valor possível para um enum e, portanto, também deve ser tratado.
Exemplo
#O código a seguir gera este diagnóstico porque o valor de enum e2 não é tratado:
enum E { e1, e2 }
void f(E e) {
switch (e) {
case E.e1:
break;
}
}
Correções comuns
#
Se há um tratamento especial para os valores ausentes, então adicione uma cláusula case para cada um dos valores ausentes:
enum E { e1, e2 }
void f(E e) {
switch (e) {
case E.e1:
break;
case E.e2:
break;
}
}
Se os valores ausentes devem ser tratados da mesma forma, então adicione uma cláusula default:
enum E { e1, e2 }
void f(E e) {
switch (e) {
case E.e1:
break;
default:
break;
}
}
Salvo indicação em contrário, a documentação neste site reflete Dart 3.13.7. Relatar um problema.
Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.