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

生成コンストラクターから非生成コンストラクターへのリダイレクト

生成コンストラクターはファクトリコンストラクターにリダイレクトできません。

説明

#

生成コンストラクターがファクトリコンストラクターにリダイレクトする場合、アナライザーはこの診断を生成します。

#

以下のコードは、生成コンストラクター C.a がファクトリコンストラクター C.b にリダイレクトするため、この診断を生成します。

dart
class C {
  C.a() : this.b();
  factory C.b() => C.a();
}

一般的な修正

#

生成コンストラクターが別のコンストラクターにリダイレクトする必要がない場合は、リダイレクトを削除してください。

dart
class C {
  C.a();
  factory C.b() => C.a();
}

生成コンストラクターが別のコンストラクターにリダイレクトする必要がある場合は、別のコンストラクターを生成(ファクトリではない)コンストラクターにしてください。

dart
class C {
  C.a() : this.b();
  C.b();
}