Skip to main content

avoid_returning_null_for_void

Stable
Recommended
Fix available

Avoid returning null for void.

Details

#

AVOID returning null for void.

In a large variety of languages void as return type is used to indicate that a function doesn't return anything. Dart allows returning null in functions with void return type but it also allow using return; without specifying any value. To have a consistent way you should not return null and only use an empty return.

BAD:

dart
void f1() {
  return null;
}
Future<void> f2() async {
  return null;
}

GOOD:

dart
void f1() {
  return;
}
Future<void> f2() async {
  return;
}

Enable

#

To enable the avoid_returning_null_for_void rule, add avoid_returning_null_for_void under linter > rules in your analysis_options.yaml file:

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_returning_null_for_void

If you're instead using the YAML map syntax to configure linter rules, add avoid_returning_null_for_void: true under linter > rules:

analysis_options.yaml
yaml
linter:
  rules:
    avoid_returning_null_for_void: true