目次

discarded_futures

非同期関数を非`async`ブロック内で呼び出さないでください。

この規則は、Dart 2.18以降で使用できます。

この規則にはクイックフィックスがあります。

詳細

#

非`async`関数で非同期呼び出しを行うことは、通常、プログラミングエラーの兆候です。一般的に、これらの関数は`async`とマークされ、そのようなFutureは`unawaited_futures`によって強制されるように`await`される必要があります。

非`async`ブロックでは、非同期関数を呼び出さないでください。

悪い例

dart
void recreateDir(String path) {
  deleteDir(path);
  createDir(path);
}

Future<void> deleteDir(String path) async {}

Future<void> createDir(String path) async {}

良い例

dart
Future<void> recreateDir(String path) async {
  await deleteDir(path);
  await createDir(path);
}

Future<void> deleteDir(String path) async {}

Future<void> createDir(String path) async {}

使用方法

#

`discarded_futures`規則を有効にするには、`analysis_options.yaml`ファイルのlinter > rulesの下に`discarded_futures`を追加します。`analysis_options.yaml`

analysis_options.yaml
yaml
linter:
  rules:
    - discarded_futures