curly_braces_in_flow_control_structures
DO use curly braces for all flow control structures.
This rule is available as of Dart 2.0.0.
Rule sets: core, recommended, flutter
This rule has a quick fix available.
Details
DO use curly braces for all flow control structures.
Doing so avoids the dangling else problem.
BAD:
if (overflowChars != other.overflowChars)
return overflowChars < other.overflowChars;
GOOD:
if (isWeekDay) {
print('Bike to work!');
} else {
print('Go dancing or read a book!');
}
There is one exception to this: an if
statement with no else
clause where
the entire if
statement and the then body all fit in one line. In that case,
you may leave off the braces if you prefer:
GOOD:
if (arg == null) return defaultValue;
If the body wraps to the next line, though, use braces:
GOOD:
if (overflowChars != other.overflowChars) {
return overflowChars < other.overflowChars;
}
Usage
To enable the curly_braces_in_flow_control_structures
rule,
add curly_braces_in_flow_control_structures
under linter > rules in your
analysis_options.yaml
file:
linter:
rules:
- curly_braces_in_flow_control_structures