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

avoid_null_checks_in_equality_operators

安定版
修正が利用可能です

カスタム==演算子でnullをチェックしないでください。

詳細

#

注意: このlintはnon_nullable_equals_parameter警告に置き換えられ、非推奨となりました。analysis optionsからこのlintへのすべての参照を削除してください。

カスタム==演算子でnullをチェックしないでください。

nullは特別な値であるため、Null以外のどのクラスのインスタンスもそれに等しくなることはありません。したがって、相手のインスタンスがnullかどうかをチェックするのは冗長です。

悪い例

dart
class Person {
  final String? name;

  @override
  operator ==(Object? other) =>
      other != null && other is Person && name == other.name;
}

良い例

dart
class Person {
  final String? name;

  @override
  operator ==(Object? other) => other is Person && name == other.name;
}

有効にする

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_null_checks_in_equality_operators

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

analysis_options.yaml
yaml
linter:
  rules:
    avoid_null_checks_in_equality_operators: true