curly_ braces_ in_ flow_ control_ structures
Learn about the curly_braces_in_flow_control_structures linter rule.
DO use curly braces for all flow control structures.
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 (including the condition and the body) fits 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; }
Enable
# 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 If you're instead using the YAML map syntax to configure linter rules, add curly_braces_in_flow_control_structures: true under linter > rules:
linter: rules: curly_braces_in_flow_control_structures: true Unless stated otherwise, the documentation on this site reflects Dart 3.10.3. Report an issue.