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

tighten_type_of_initializing_formals

安定版

初期化フォーマルパラメータの型を厳格化する。

詳細

#

非nullアサートが存在する場合、初期化フォーマルパラメータの型を厳格化します。これにより、型システムが問題を検出できるようになり、実行時まで検出されないという事態を防ぐことができます。

悪い例

dart
class A {
  A.c1(this.p) : assert(p != null);
  A.c2(this.p);
  final String? p;
}

良い例

dart
class A {
  A.c1(String this.p);
  A.c2(this.p);
  final String? p;
}

class B {
  String? b;
  B(this.b);
}

class C extends B {
  B(String super.b);
}

有効にする

#

tighten_type_of_initializing_formals ルールを有効にするには、analysis_options.yaml ファイルの linter > rules の下に tighten_type_of_initializing_formals を追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    - tighten_type_of_initializing_formals

代わりに、YAMLマップ構文を使用してリンテルルールを設定している場合は、linter > rules の下に tighten_type_of_initializing_formals: true を追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    tighten_type_of_initializing_formals: true