await_ only_ futures
Await only futures.
Details
#AVOID using await on anything which is not a future.
Await is allowed on the types: Future<X>, FutureOr<X>, Future<X>?,
FutureOr<X>? and dynamic.
Further, using await null is specifically allowed as a way to introduce a
microtask delay.
BAD:
main() async {
print(await 23);
}
GOOD:
main() async {
await null; // If a delay is really intended.
print(23);
}
Enable
#
To enable the await_only_futures rule, add await_only_futures under
linter > rules in your analysis_options.yaml
file:
linter:
rules:
- await_only_futures
If you're instead using the YAML map syntax to configure linter rules,
add await_only_futures: true under linter > rules:
linter:
rules:
await_only_futures: true
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Report an issue.