メインコンテンツにスキップ

無効なアノテーション

アノテーションは、const変数参照またはconstコンストラクタ呼び出しのいずれかである必要があります。

説明

#

アナライザーは、constとしてマークされた変数でもなく、constコンストラクタの呼び出しでもないものをアノテーションが使用している場合に、この診断を生成します。

getterはアノテーションとして使用できません。

#

以下のコードは、変数vconst変数ではないため、この診断を生成します。

dart
var v = 0;

@v
void f() {
}

以下のコードは、fが変数ではないため、この診断を生成します。

dart
@f
void f() {
}

以下のコードは、fがコンストラクタではないため、この診断を生成します。

dart
@f()
void f() {
}

以下のコードは、gがgetterであるため、この診断を生成します。

dart
@g
int get g => 0;

一般的な修正

#

アノテーションがconstコンストラクタではない変数を参照している場合は、変数の宣言にconstキーワードを追加してください。

dart
const v = 0;

@v
void f() {
}

アノテーションが変数を参照していない場合は、削除してください。

dart
int v = 0;

void f() {
}