avoid_null_checks_in_equality_operators
Don’t check for null in custom == operators.
This rule is available as of Dart 2.0.0.
Rule sets: recommended, flutter
This rule has a quick fix available.
Details
DON’T check for null in custom == operators.
As null is a special value, no instance of any class (other than Null
) can be
equivalent to it. Thus, it is redundant to check whether the other instance is
null.
BAD:
class Person {
final String? name;
@override
operator ==(Object? other) =>
other != null && other is Person && name == other.name;
}
GOOD:
class Person {
final String? name;
@override
operator ==(Object? other) => other is Person && name == other.name;
}
Usage
To enable the avoid_null_checks_in_equality_operators
rule,
add avoid_null_checks_in_equality_operators
under linter > rules in your
analysis_options.yaml
file:
linter:
rules:
- avoid_null_checks_in_equality_operators