type_ annotation_ deferred_ class
Detalhes sobre o diagnóstico 'type_annotation_deferred_class' produzido pelo analisador do Dart.
The deferred type '{0}' can't be used in a declaration, cast, or type test.
Descrição
#
O analisador produz este diagnóstico quando a anotação de tipo está em uma declaração de variável, ou quando o tipo usado em um cast (as) ou em um teste de tipo (is) é um tipo declarado em uma biblioteca importada usando um import
deferred. Esses tipos precisam estar disponíveis em tempo de compilação, mas não estão.
Para mais informações, veja Carregando uma biblioteca de forma preguiçosa.
Exemplo
#
O código a seguir produz este diagnóstico porque o tipo do parâmetro f é importado de uma biblioteca
deferred:
import 'dart:io' deferred as io;
void f(io.File f) {}
Correções comuns
#Se você precisa referenciar o tipo importado, então remova a palavra-chave deferred:
import 'dart:io' as io;
void f(io.File f) {}
Se o import precisa ser deferred e existe outro tipo apropriado, então use esse tipo no lugar do tipo da biblioteca
deferred.
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ê.