Pular para o conteúdo principal

invalid_extension_argument_count

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

Extension overrides must have exactly one argument: the value of 'this' in the extension method.

Descrição

#

O analisador produz este diagnóstico quando uma sobrescrita de extensão (extension override) não tem exatamente um argumento. O argumento é a expressão usada para calcular o valor de this dentro do método de extensão, então deve haver exatamente um argumento.

Exemplos

#

O código a seguir produz este diagnóstico porque não há argumentos:

dart
extension E on String {
  String join(String other) => '$this $other';
}
​
void f() {
  E().join('b');
}

E o código a seguir produz este diagnóstico porque há mais de um argumento:

dart
extension E on String {
  String join(String other) => '$this $other';
}
​
void f() {
  E('a', 'b').join('c');
}

Correções comuns

#

Forneça um argumento para a sobrescrita de extensão:

dart
extension E on String {
  String join(String other) => '$this $other';
}
​
void f() {
  E('a').join('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ê.