跳到主要内容

library_private_types_in_public_api

在公共 API 中无效使用私有类型。

描述

#

当库的公共 API 中引用了不属于该库公共 API 的类型时,分析器会生成此诊断。

在公共 API 中使用私有类型会使得该 API 在定义该类型的库外部无法使用。

示例

#

以下代码会生成此诊断,因为公共函数 f 的参数 c 的类型是库私有的(_C)。

dart
void f(_C c) {}

class _C {}

常见修复方法

#

如果该 API 无需在定义该类型的库外部使用,则将其设为私有。

dart
void _f(_C c) {}

class _C {}

如果该 API 需要成为库公共 API 的一部分,则要么使用其他公共类型,要么将引用的类型设为公共。

dart
void f(C c) {}

class C {}