Pular para o conteúdo principal

inference_failure_on_collection_literal

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

The type argument(s) of '{0}' can't be inferred.

Descrição

#

O analisador produz este diagnóstico quando:

  • a opção de linguagem strict-inference está habilitada no arquivo de opções de análise,
  • um literal de lista, mapa ou conjunto não tem argumentos de tipo, e
  • os valores dos argumentos de tipo não podem ser inferidos a partir dos elementos.

Exemplo

#

Dado um arquivo de opções de análise contendo o seguinte:

yaml
analyzer:
  language:
    strict-inference: true

O código a seguir produz este diagnóstico porque o tipo dos elementos do literal de lista não pode ser inferido:

dart
void f() {
  var list = [];
  print(list);
}

Correções comuns

#

Forneça argumentos de tipo explícitos para o literal:

dart
void f() {
  var list = <int>[];
  print(list);
}

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