undefined_ super_ member_ read
Detalhes sobre o diagnóstico 'undefined_super_member_read' produzido pelo analisador do Dart.
The member '{0}' is declared in '{1}', but private names are visible only in their own library.
The member '{0}' isn't defined in a superclass of '{1}'.
There's a setter '{0}' in a superclass of '{1}', but no getter.
Descrição
#
O analisador emite este diagnóstico quando um membro é lido, invocado ou
extraído (tear-off) usando super, mas nenhuma superclasse da declaração
envolvente possui um método, getter ou campo com esse nome.
Exemplos
#
O código a seguir produz este diagnóstico porque a superclasse A não define
um membro chamado bar:
class A {
void foo() {}
}
class B extends A {
void m() {
super.bar();
}
}
O código a seguir produz este diagnóstico porque a superclasse A define
apenas um setter chamado foo, que não pode ser lido:
class A {
set foo(int _) {}
}
class B extends A {
int m() => super.foo;
}
Correções comuns
#Se o membro herdado que você pretende usar tiver outro nome, faça o nome corresponder ao do membro herdado:
class A {
void foo() {}
}
class B extends A {
void m() {
super.foo();
}
}
Se o membro não estiver definido, adicione-o a uma superclasse:
class A {
void foo() {}
void bar() {}
}
class B extends A {
void m() {
super.bar();
}
}
Se uma superclasse definir apenas um setter, adicione um getter com o mesmo nome:
class A {
int get foo => 0;
set foo(int _) {}
}
class B extends A {
int m() => super.foo;
}
Caso contrário, remova a referência.
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ê.