always_ put_ control_ body_ on_ new_ line
Separate the control structure expression from its statement.
Details
#From the style guide for the flutter repo:
DO separate the control structure expression from its statement.
Don't put the statement part of an
if
,
for
,
while
,
do
on the same line
as the expression, even if it is short. Doing so makes it unclear that there
is relevant code there. This is especially important for early returns.
BAD:
if (notReady) return;
if (notReady)
return;
else print('ok')
while (condition) i += 1;
GOOD:
if (notReady)
return;
if (notReady)
return;
else
print('ok')
while (condition)
i += 1;
Note that this rule can conflict with the Dart formatter, and should not be enabled when the Dart formatter is used.
Enable
#
To enable the
always_put_control_body_on_new_line
rule, add
always_put_control_body_on_new_line
under
linter > rules
in your
analysis_options.yaml
file:
linter:
rules:
- always_put_control_body_on_new_line
If you're instead using the YAML map syntax to configure linter rules,
add
always_put_control_body_on_new_line: true
under
linter > rules:
linter:
rules:
always_put_control_body_on_new_line: true
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Report an issue.