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

instantiate_enum

Enum をインスタンス化することはできません。

説明

#

enum をインスタンス化すると、アナライザーはこの診断を生成します。コンストラクタを呼び出して enum のインスタンスを作成することは無効です。enum の宣言で名前が付けられたインスタンスのみが存在できます。

#

以下のコードは、enum E がインスタンス化されているため、この診断を生成します。

dart
// @dart = 2.16
enum E {a}

var e = E();

一般的な修正

#

enum のインスタンスを使用したい場合は、enum で定義されている定数のいずれかを参照してください。

dart
// @dart = 2.16
enum E {a}

var e = E.a;

クラスのインスタンスを使用したい場合は、enum の名前の代わりにそのクラスの名前を使用してください。