Pular para o conteúdo principal

library_private_types_in_public_api

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

Invalid use of a private type in a public API.

Descrição

#

O analisador gera este diagnóstico quando um tipo que não faz parte da API pública de uma biblioteca é referenciado na API pública dessa biblioteca.

Usar um tipo privado em uma API pública pode tornar a API inutilizável fora da biblioteca que a define.

Exemplo

#

O código a seguir gera este diagnóstico porque o parâmetro c da função pública f tem um tipo privado da biblioteca (_C):

dart
void f(_C c) {}
​
class _C {}

Correções comuns

#

Se a API não precisa ser usada fora da biblioteca que a define, então torne-a privada:

dart
void _f(_C c) {}
​
class _C {}

Se a API precisa fazer parte da API pública da biblioteca, então use um tipo diferente que seja público, ou torne público o tipo referenciado:

dart
void f(C c) {}
​
class C {}

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