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

only_throw_errors

安定版

Exception または Error を継承したクラスのインスタンスのみをスローします。

詳細

#

dart.core.Error または dart.core.Exception を継承したクラスのインスタンスのみをスローします (推奨)。

Error または Exception を継承しないインスタンスをスローすることは、良いプラクティスではありません。通常、これはより徹底的に実装されるべきもののためのハックです。

悪い例

dart
void throwString() {
  throw 'hello world!'; // LINT
}

良い例

dart
void throwArgumentError() {
  Error error = ArgumentError('oh!');
  throw error; // OK
}

有効にする

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - only_throw_errors

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

analysis_options.yaml
yaml
linter:
  rules:
    only_throw_errors: true