mixin_ on_ sealed_ class
Detalhes sobre o diagnóstico 'mixin_on_sealed_class' produzido pelo analisador do Dart.
The class '{0}' shouldn't be used as a mixin constraint because it is sealed, and any class mixing in this mixin must have '{0}' as a superclass.
Descrição
#
O analisador emite este diagnóstico quando a restrição de superclasse de um
mixin é uma classe de outro pacote que foi marcada como
sealed. Classes
sealed não podem ser estendidas,
implementadas, misturadas (mixed in) ou usadas como restrição de superclasse.
Exemplo
#Se o pacote p define uma classe sealed:
import 'package:meta/meta.dart';
@sealed
class C {}
Então, o código a seguir, quando estiver em um pacote diferente de p, gera
este diagnóstico:
import 'package:p/p.dart';
mixin M on C {}
Correções comuns
#
Se as classes que usam o mixin não precisarem ser subclasses da classe
sealed, então considere adicionar um campo e delegar para a instância
encapsulada da classe sealed.
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ê.