specify_ nonobvious_ local_ variable_ types
Saiba mais sobre a regra de lint specify_nonobvious_local_variable_types.
Especifique anotações de tipo não óbvias para variáveis locais.
Detalhes
#Anote o tipo de variáveis locais inicializadas quando o tipo for não óbvio.
Anotações de tipo em variáveis locais podem servir como um pedido de inferência de tipo, documentando o resultado esperado da etapa de inferência e permitindo, de forma declarativa, que o compilador e o analisador resolvam a tarefa possivelmente complexa de encontrar os argumentos de tipo e as anotações na expressão de inicialização que produzam o resultado desejado.
Anotações de tipo em variáveis locais também podem informar os leitores sobre o tipo da expressão de inicialização, o que lhes permite continuar lendo as linhas seguintes do código com informações confiáveis sobre o tipo da variável (o que pode não ser imediatamente evidente ao olhar para a expressão de inicialização).
RUIM:
List<List<Ingredient>> possibleDesserts(Set<Ingredient> pantry) {
var desserts = genericFunctionDeclaredFarAway(<num>[42], 'Something');
for (final recipe in cookbook) {
if (pantry.containsAll(recipe)) {
desserts.add(recipe);
}
}
return desserts;
}
const List<List<Ingredient>> cookbook = ...;
BOM:
List<List<Ingredient>> possibleDesserts(Set<Ingredient> pantry) {
List<List<Ingredient>> desserts = genericFunctionDeclaredFarAway(
<num>[42],
'Something',
);
for (final List<Ingredient> recipe in cookbook) {
if (pantry.containsAll(recipe)) {
desserts.add(recipe);
}
}
return desserts;
}
const List<List<Ingredient>> cookbook = ...;
Regras incompatíveis
#O lint specify_nonobvious_local_variable_types é incompatível com as seguintes regras:
Ativar
#
Para ativar a regra specify_nonobvious_local_variable_types, adicione specify_nonobvious_local_variable_types
em
linter > rules no seu arquivo analysis_options.yaml:
linter:
rules:
- specify_nonobvious_local_variable_types
Se você usa a sintaxe de mapa YAML para configurar as regras de lint,
adicione specify_nonobvious_local_variable_types: true em linter > rules:
linter:
rules:
specify_nonobvious_local_variable_types: true
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ê.