duplicate_ variable_ pattern
Detalhes sobre o diagnóstico 'duplicate_variable_pattern' produzido pelo analisador do Dart.
The variable '{0}' is already defined in this pattern.
Descrição
#O analisador emite este diagnóstico quando um ramo de um padrão de E lógico declara uma variável que já foi declarada em um ramo anterior do mesmo padrão.
Exemplo
#
O código a seguir gera este diagnóstico porque a variável a é declarada nos
dois ramos do padrão de E lógico:
void f((int, int) r) {
if (r case (var a, 0) && (0, var a)) {
print(a);
}
}
Correções comuns
#Se você precisa capturar o valor comparado em vários ramos, então altere os nomes das variáveis para que sejam únicos:
void f((int, int) r) {
if (r case (var a, 0) && (0, var b)) {
print(a + b);
}
}
Se você só precisa capturar o valor comparado em um ramo, então remova o padrão de variável de todos os ramos, exceto um:
void f((int, int) r) {
if (r case (var a, 0) && (0, _)) {
print(a);
}
}
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ê.