Pular para o conteúdo principal

recursive_interface_inheritance

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

'{0}' can't be a superinterface of itself: {1}.

'{0}' can't extend itself.

'{0}' can't implement itself.

'{0}' can't use itself as a mixin.

'{0}' can't use itself as a superclass constraint.

Descrição

#

O analisador emite este diagnóstico quando há uma circularidade na hierarquia de tipos. Isso acontece quando um tipo, direta ou indiretamente, é declarado como subtipo de si mesmo.

Exemplo

#

O código a seguir gera este diagnóstico porque a classe A é declarada como subtipo de B, e B é subtipo de A:

dart
class A extends B {}
​
class B implements A {}

Correções comuns

#

Altere a hierarquia de tipos para que não haja circularidade.

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