test_types_in_equals
Missing type test for '{0}' in '=='.
Description
#The analyzer produces this diagnostic when an override of the ==
operator doesn't include a type test on the value of the parameter.
Example
#The following code produces this diagnostic because other
is not type
tested:
dart
class C {
final int f;
C(this.f);
@override
bool operator ==(Object other) {
return (other as C).f == f;
}
}
Common fixes
#Perform an is
test as part of computing the return value:
dart
class C {
final int f;
C(this.f);
@override
bool operator ==(Object other) {
return other is C && other.f == f;
}
}
除非另有说明,文档之所提及适用于 Dart 3.7.3 版本,本页面最后更新时间: 2025-05-08。 查看文档源码 或者 报告页面问题。