跳到主要内容

library_private_types_in_public_api

稳定
推荐

避免在公共 API 中使用库私有类型。

详细信息

#

避免在公共 API 中使用库私有类型。

就此 lint 而言,公共 API 被认为是任何顶层或成员声明,除非该声明是库私有的或包含在库私有的声明中。检查以下类型的使用情况:

  • 函数或方法的返回类型,
  • 函数或方法的任何参数类型,
  • 函数、方法、类、mixin、扩展的扩展类型或类型别名的任何类型参数的边界,
  • 任何顶层变量或字段的类型,
  • 类型别名声明中使用的任何类型(例如 typedef F = _Private Function();),或
  • 扩展或 mixin 的 on 子句中使用的任何类型

BAD(错误示例)

dart
f(_Private p) { ... }
class _Private {}

GOOD(正确示例)

dart
f(String s) { ... }

启用

#

要启用 library_private_types_in_public_api 规则,请在您的 analysis_options.yaml 文件的 linter > rules 下添加 library_private_types_in_public_api

analysis_options.yaml
yaml
linter:
  rules:
    - library_private_types_in_public_api

如果您改用 YAML map 语法来配置 linter 规则,请在 linter > rules 下添加 library_private_types_in_public_api: true

analysis_options.yaml
yaml
linter:
  rules:
    library_private_types_in_public_api: true