invalid_internal_annotation
一個包的私有 API 中只有公共元素可以被註解為內部的。
描述
#當一個宣告被 internal 註解標記,且該宣告位於公共庫中或具有私有名稱時,分析器會產生此診斷。
示例
#當以下程式碼位於公共庫中時,會產生此診斷,因為 internal 註解不能應用於公共庫中的宣告。
dart
import 'package:meta/meta.dart';
@internal
class C {}當以下程式碼無論位於公共庫還是內部庫中時,都會產生此診斷,因為 internal 註解不能應用於具有私有名稱的宣告。
dart
import 'package:meta/meta.dart';
@internal
class _C {}
void f(_C c) {}常見修復
#如果宣告具有私有名稱,則移除該註解。
dart
class _C {}
void f(_C c) {}如果宣告具有公共名稱,並且旨在作為包的內部使用,則將帶註解的宣告移至內部庫(換句話說,位於 src 目錄內的庫)。
否則,移除該註解的使用。
dart
class C {}