extension_ type_ implements_ representation_ not_ supertype
Detalhes sobre o diagnóstico 'extension_type_implements_representation_not_supertype' produzido pelo analisador do Dart.
'{0}', the representation type of '{1}', is not a supertype of '{2}', the representation type of '{3}'.
Descrição
#O analisador produz este diagnóstico quando um tipo de extensão implementa outro tipo de extensão, e o tipo de representação do tipo de extensão implementado não é subtipo do tipo de representação do tipo de extensão que implementa.
Exemplo
#
O código a seguir produz este diagnóstico porque o tipo de extensão B
implementa A, mas o tipo de representação de A (num) não é um
subtipo do tipo de representação de B (String):
extension type A(num i) {}
extension type B(String s) implements A {}
Correções comuns
#Ou altere os tipos de representação dos dois tipos de extensão para que o tipo de representação do tipo implementado seja um supertipo do tipo de representação do tipo que implementa:
extension type A(num i) {}
extension type B(int n) implements A {}
Ou remova o tipo implementado da cláusula implements:
extension type A(num i) {}
extension type B(String s) {}
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ê.