Pular para o conteúdo principal

avoid_void_async

Saiba mais sobre a regra de lint avoid_void_async.

Estável
Correção disponível
Lançado no Dart 2.1

Evite funções async que retornam void.

Detalhes

#

FAÇA marcar funções async como retornando Future<void>.

Ao declarar um método ou função async que não retorna valor, declare que ele retorna Future<void> e não apenas void.

RUIM:

dart
void f() async {}
void f2() async => null;

BOM:

dart
Future<void> f() async {}
Future<void> f2() async => null;

EXCEÇÃO:

Faz-se uma exceção para as funções main de nível superior, em que a anotação Future pode (e geralmente deve) ser omitida em favor de void.

BOM:

dart
Future<void> f() async {}
​
void main() async {
  await f();
}

Ativar

#

Para ativar a regra avoid_void_async, adicione avoid_void_async em linter > rules no seu arquivo analysis_options.yaml:

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_void_async

Se você usa a sintaxe de mapa YAML para configurar as regras de lint, adicione avoid_void_async: true em linter > rules:

analysis_options.yaml
yaml
linter:
  rules:
    avoid_void_async: true

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