unrelated_type_equality_checks   
関連性のない型の参照に対する等価演算子==の呼び出し。
詳細
#しないでください:関連性のない型の参照を等価性で比較しないでください。
互いにサブタイプでない型の参照を比較すると、ほとんどの場合falseが返され、プログラマの意図を反映していない可能性があります。
package:fixnumのInt64とInt32は、intが右辺にある場合にintと比較できます。このリントはこのケースを特別に許可しています。
悪い例
dart
void someFunction() {
  var x = '1';
  if (x == 1) print('someFunction'); // LINT
}悪い例
dart
void someFunction1() {
  String x = '1';
  if (x == 1) print('someFunction1'); // LINT
}悪い例
dart
void someFunction13(DerivedClass2 instance) {
  var other = DerivedClass3();
  if (other == instance) print('someFunction13'); // LINT
}
class ClassBase {}
class DerivedClass1 extends ClassBase {}
abstract class Mixin {}
class DerivedClass2 extends ClassBase with Mixin {}
class DerivedClass3 extends ClassBase implements Mixin {}良い例
dart
void someFunction2() {
  var x = '1';
  var y = '2';
  if (x == y) print(someFunction2); // OK
}良い例
dart
void someFunction3() {
  for (var i = 0; i < 10; i++) {
    if (i == 0) print(someFunction3); // OK
  }
}良い例
dart
void someFunction4() {
  var x = '1';
  if (x == null) print(someFunction4); // OK
}良い例
dart
void someFunction7() {
  List someList;
  if (someList.length == 0) print('someFunction7'); // OK
}良い例
dart
void someFunction8(ClassBase instance) {
  DerivedClass1 other;
  if (other == instance) print('someFunction8'); // OK
}良い例
dart
void someFunction10(unknown) {
  var what = unknown - 1;
  for (var index = 0; index < unknown; index++) {
    if (what == index) print('someFunction10'); // OK
  }
}良い例
dart
void someFunction11(Mixin instance) {
  var other = DerivedClass2();
  if (other == instance) print('someFunction11'); // OK
  if (other != instance) print('!someFunction11'); // OK
}
class ClassBase {}
abstract class Mixin {}
class DerivedClass2 extends ClassBase with Mixin {}有効にする
#unrelated_type_equality_checksルールを有効にするには、analysis_options.yamlファイルでlinter > rulesの下にunrelated_type_equality_checksを追加してください。
analysis_options.yaml
yaml
linter:
  rules:
    - unrelated_type_equality_checks代わりにYAMLマップ構文を使用してlinterルールを構成している場合は、linter > rulesの下にunrelated_type_equality_checks: trueを追加してください。
analysis_options.yaml
yaml
linter:
  rules:
    unrelated_type_equality_checks: true