Contents
Contents

Avoid returning null from members whose return type is bool, double, int, or num.

This rule has been removed as of the latest Dart releases.

Details

#

NOTE: This rule is removed in Dart 3.3.0; it is no longer functional.

AVOID returning null from members whose return type is bool, double, int, or num.

Functions that return primitive types such as bool, double, int, and num are generally expected to return non-nullable values. Thus, returning null where a primitive type was expected can lead to runtime exceptions.

BAD:

dart
bool getBool() => null;
num getNum() => null;
int getInt() => null;
double getDouble() => null;

GOOD:

dart
bool getBool() => false;
num getNum() => -1;
int getInt() => -1;
double getDouble() => -1.0;

Usage

#

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

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_returning_null