invalid_ export_ of_ internal_ element_ indirectly
Detalhes sobre o diagnóstico 'invalid_export_of_internal_element_indirectly' produzido pelo analisador do Dart.
The member '{0}' can't be exported as a part of a package's public API, but is indirectly exported as part of the signature of '{1}'.
Descrição
#
O analisador produz este diagnóstico quando uma biblioteca públicaPublic libraryUma biblioteca localizada no diretório `lib` de um pacote, mas
não dentro do diretório `lib/src`. Saiba mais
exporta uma função de nível superior com tipo de retorno ou com pelo menos um tipo
de parâmetro marcado com a anotação internal.
Exemplo
#Dado um arquivo a.dart no diretório src que contém o seguinte:
import 'package:meta/meta.dart';
@internal
typedef IntFunction = int Function();
int f(IntFunction g) => g();
O código a seguir produz este diagnóstico porque a função f tem um parâmetro do
tipo IntFunction, e IntFunction é destinado apenas a uso interno:
export 'src/a.dart' show f;
Correções comuns
#Se a função precisar ser pública, então torne públicos todos os tipos na assinatura da função.
Se a função não precisar ser exportada, então deixe de exportá-la, seja
removendo-a da cláusula show, adicionando-a à cláusula hide, seja removendo
o export.
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ê.