Pular para o conteúdo principal

duplicate_pattern_assignment_variable

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

The variable '{0}' is already assigned in this pattern.

Descrição

#

O analisador emite este diagnóstico quando uma única variável de padrão recebe um valor mais de uma vez na mesma atribuição de padrão.

Exemplo

#

O código a seguir gera este diagnóstico porque a variável a é atribuída duas vezes no padrão (a, a):

dart
int f((int, int) r) {
  int a;
  (a, a) = r;
  return a;
}

Correções comuns

#

Se você precisa capturar todos os valores, então use uma variável única para cada um dos subpadrões que estão sendo comparados:

dart
int f((int, int) r) {
  int a, b;
  (a, b) = r;
  return a + b;
}

Se alguns dos valores não precisam ser capturados, então use um padrão curinga _ para evitar ter que vincular o valor a uma variável:

dart
int f((int, int) r) {
  int a;
  (_, a) = r;
  return a;
}

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