use_late_for_private_fields_and_variables
Use late for private members with a non-nullable type.
Details
#Use late
for private members with non-nullable types that are always expected to be non-null. Thus it's clear that the field is not expected to be null
and it avoids null checks.
BAD:
int? _i;
m() {
_i!.abs();
}
GOOD:
late int _i;
m() {
_i.abs();
}
OK:
int? _i;
m() {
_i?.abs();
_i = null;
}
Enable
#To enable the use_late_for_private_fields_and_variables
rule, add use_late_for_private_fields_and_variables
under linter > rules in your analysis_options.yaml
file:
linter:
rules:
- use_late_for_private_fields_and_variables
If you're instead using the YAML map syntax to configure linter rules, add use_late_for_private_fields_and_variables: true
under linter > rules:
linter:
rules:
use_late_for_private_fields_and_variables: true
Unless stated otherwise, the documentation on this site reflects Dart 3.6.2. Page last updated on 2025-01-27. View source or report an issue.