prefer_ void_ to_ null
Don't use the Null type, unless you are positive that you don't want void.
Details
#DON'T use the type Null where void would work.
BAD:
Null f() {}
Future<Null> f() {}
Stream<Null> f() {}
f(Null x) {}
GOOD:
void f() {}
Future<void> f() {}
Stream<void> f() {}
f(void x) {}
Some exceptions include formulating special function types:
Null Function(Null, Null);
and for making empty literals which are safe to pass into read-only locations for any type of map or list:
<Null>[];
<int, Null>{};
Enable
#
To enable the
prefer_void_to_null
rule, add
prefer_void_to_null
under
linter > rules
in your
analysis_options.yaml
file:
linter:
rules:
- prefer_void_to_null
If you're instead using the YAML map syntax to configure linter rules,
add
prefer_void_to_null: true
under
linter > rules:
linter:
rules:
prefer_void_to_null: true
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Report an issue.