prefer_final_in_for_each
Prefer final in for-each loop variable if reference is not reassigned.
This rule is available as of Dart 2.1.1.
This rule has a quick fix available.
Details
DO prefer declaring for-each loop variables as final if they are not reassigned later in the code.
Declaring for-each loop variables as final when possible is a good practice because it helps avoid accidental reassignments and allows the compiler to do optimizations.
BAD:
for (var element in elements) { // LINT
print('Element: $element');
}
GOOD:
for (final element in elements) {
print('Element: $element');
}
GOOD:
for (var element in elements) {
element = element + element;
print('Element: $element');
}
Usage
To enable the prefer_final_in_for_each
rule,
add prefer_final_in_for_each
under linter > rules in your
analysis_options.yaml
file:
linter:
rules:
- prefer_final_in_for_each