avoid_ redundant_ argument_ values
Saiba mais sobre a regra de lint avoid_redundant_argument_values.
Evite valores de argumento redundantes.
Detalhes
#NÃO FAÇA passar um argumento que corresponda ao valor padrão do parâmetro correspondente.
Observe que uma sobrescrita de método pode alterar o valor padrão de um
parâmetro, de modo que um argumento pode ser igual a um valor padrão e não ao
outro. Considere, por exemplo, duas classes, A e B, em que
B é subclasse de
A, B sobrescreve um método declarado em A, e esse método tem um parâmetro
com um valor padrão na declaração de A e outro valor padrão na declaração de
B. Se o tipo estático do alvo do método invocado for B, e o valor padrão de
B corresponder ao argumento, então o argumento pode ser omitido (e, se o valor
do argumento for diferente, nenhum lint é reportado). Se, porém, o tipo estático
do alvo do método invocado for A, um lint pode ser reportado, mas não podemos
saber estaticamente qual método é invocado, então o lint reportado pode ser um
falso positivo. Esses casos podem ser ignorados inline com um comentário como
// ignore: avoid_redundant_argument_values.
RUIM:
void f({bool valWithDefault = true, bool? val}) {
...
}
void main() {
f(valWithDefault: true);
}
BOM:
void f({bool valWithDefault = true, bool? val}) {
...
}
void main() {
f(valWithDefault: false);
f();
}
Ativar
#
Para ativar a regra avoid_redundant_argument_values, adicione avoid_redundant_argument_values
em
linter > rules no seu arquivo analysis_options.yaml:
linter:
rules:
- avoid_redundant_argument_values
Se você usa a sintaxe de mapa YAML para configurar as regras de lint,
adicione avoid_redundant_argument_values: true em linter > rules:
linter:
rules:
avoid_redundant_argument_values: 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ê.