Change the BraceWrappingFlags' AfterControlStatement from a bool to an enum with three values:
- "Never": This is the default, and does not do any brace wrapping after control statements.
- "MultiLine": This only wraps braces after multi-line control statements (this really only happens when a ColumnLimit is specified).
- "Always": This always wraps braces after control statements.
The first and last options are backwards-compatible with "false" and "true", respectively.
The new "MultiLine" option is useful for when a wrapped control statement's indentation matches the subsequent block's indentation. It makes it easier to see at a glance where the control statement ends and where the block's code begins. For example:
if ( foo && bar ) { baz(); }
vs.
if ( foo && bar ) { baz(); }
Short control statements (1 line) do not wrap the brace to the next line, e.g.
if (foo) { bar(); } else { baz(); }
Change to MultiLine to match AlwaysBreakBeforeMultilineStrings