Pular para o conteúdo principal

null_check_always_fails

Detalhes sobre o diagnóstico 'null_check_always_fails' produzido pelo analisador do Dart.

This null-check will always throw an exception because the expression will always evaluate to 'null'.

Descrição

#

O analisador emite este diagnóstico quando o operador de verificação de nulo (!) é usado em uma expressão cujo valor só pode ser null. Nesse caso, o operador sempre lança uma exceção, o que provavelmente não é o comportamento pretendido.

Exemplo

#

O código a seguir produz este diagnóstico porque a função g sempre retornará null, o que significa que a verificação de nulo em f sempre lançará uma exceção:

dart
void f() {
  g()!;
}
​
Null g() => null;

Correções comuns

#

Se você pretende sempre lançar uma exceção, então substitua a verificação de nulo por uma expressão throw explícita para deixar a intenção mais clara:

dart
void f() {
  g();
  throw TypeError();
}
​
Null g() => null;

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ê.