type_init_formals
初期化フォーマルに型注釈を付けないでください。
詳細
#初期化フォーマルに型注釈を付けないでください。
コンストラクタパラメータがフィールドを初期化するために this.x を使用している場合、パラメータの型はフィールドと同じ型であるとみなされます。コンストラクタパラメータがスーパークラスコンストラクタにフォワードするために super.x を使用している場合、パラメータの型はスーパークラスコンストラクタのパラメータと同じ型であるとみなされます。
初期化フォーマルにフィールドの型とは異なる型で型注釈を付けることは問題ありません。
悪い例
dart
class Point {
int x, y;
Point(int this.x, int this.y);
}良い例
dart
class Point {
int x, y;
Point(this.x, this.y);
}悪い例
dart
class A {
int a;
A(this.a);
}
class B extends A {
B(int super.a);
}良い例
dart
class A {
int a;
A(this.a);
}
class B extends A {
B(super.a);
}有効にする
#type_init_formals ルールを有効にするには、analysis_options.yaml ファイルの linter > rules の下に type_init_formals を追加してください。
analysis_options.yaml
yaml
linter:
rules:
- type_init_formals代わりに YAML マップ構文を使用してリンター ルールを設定している場合は、linter > rules の下に type_init_formals: true を追加してください。
analysis_options.yaml
yaml
linter:
rules:
type_init_formals: true