Pular para o conteúdo principal

prefer_inlined_adds

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

The addition of a list item could be inlined.

The addition of multiple list items could be inlined.

Descrição

#

O analisador emite este diagnóstico quando os métodos add e addAll são invocados em um literal de lista, mas os elementos adicionados poderiam ser incluídos diretamente no literal de lista.

Exemplo

#

O código a seguir gera este diagnóstico porque o método add é usado para adicionar b, quando ele poderia ter sido incluído diretamente no literal de lista:

dart
List<String> f(String a, String b) {
  return [a]..add(b);
}

O código a seguir gera este diagnóstico porque o método addAll é usado para adicionar os elementos de b, quando eles poderiam ter sido incluídos diretamente no literal de lista:

dart
List<String> f(String a, List<String> b) {
  return [a]..addAll(b);
}

Correções comuns

#

Se o método add estiver sendo usado, torne o argumento um elemento da lista e remova a invocação:

dart
List<String> f(String a, String b) {
  return [a, b];
}

Se o método addAll estiver sendo usado, use o operador spread sobre o argumento para adicionar seus elementos à lista e remova a invocação:

dart
List<String> f(String a, List<String> b) {
  return [a, ...b];
}

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