目次

no_runtimeType_toString

runtimeTypetoString() を呼び出すのを避けてください。

このルールは Dart 2.8 以降で利用可能です。

詳細

#

ランタイム型で toString を呼び出すことは、パフォーマンスに悪影響を与える可能性のある自明でない操作です。避ける方が良いでしょう。

悪い例

dart
class A {
  String toString() => '$runtimeType()';
}

良い例

dart
class A {
  String toString() => 'A()';
}

このリンターには、パフォーマンスが問題にならない場合や、パフォーマンスよりも実際の型情報が重要な場合など、いくつかの例外があります。

  • アサーション内
  • throw 式内
  • catch 句内
  • mixin 宣言内
  • 抽象クラス宣言内

使用法

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - no_runtimeType_toString