diff --git a/rfc-rustfmt.toml b/rfc-rustfmt.toml index 0e622bdd943..e286dcb4b7f 100644 --- a/rfc-rustfmt.toml +++ b/rfc-rustfmt.toml @@ -4,3 +4,4 @@ control_style = "Rfc" where_style = "Rfc" generics_indent = "Block" fn_call_style = "Block" +combine_control_expr = true diff --git a/src/config.rs b/src/config.rs index d4bff961e74..c61b03b88d7 100644 --- a/src/config.rs +++ b/src/config.rs @@ -576,7 +576,7 @@ create_config! { "What Write Mode to use when none is supplied: Replace, Overwrite, Display, Diff, Coverage"; condense_wildcard_suffixes: bool, false, "Replace strings of _ wildcards by a single .. in \ tuple patterns"; - combine_control_expr: bool, true, "Combine control expressions with funciton calls." + combine_control_expr: bool, false, "Combine control expressions with funciton calls." } #[cfg(test)] diff --git a/tests/target/configs-combine_control_expr-false.rs b/tests/target/configs-combine_control_expr-false.rs new file mode 100644 index 00000000000..0d9ab24a6ed --- /dev/null +++ b/tests/target/configs-combine_control_expr-false.rs @@ -0,0 +1,133 @@ +// rustfmt-fn_call_style: Block +// rustfmt-combine_control_expr: false +// Combining openings and closings. See https://github.com/rust-lang-nursery/fmt-rfcs/issues/61. + +fn main() { + // Call + foo(bar( + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + )); + + // Mac + foo(foo!( + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + )); + + // MethodCall + foo(x.foo::( + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + )); + + // Block + foo!({ + foo(); + bar(); + }); + + // Closure + foo(|x| { + let y = x + 1; + y + }); + + // Match + foo(match opt { + Some(x) => x, + None => y, + }); + + // Struct + foo(Bar { + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + }); + + // If + foo!( + if x { + foo(); + } else { + bar(); + } + ); + + // IfLet + foo!( + if let Some(..) = x { + foo(); + } else { + bar(); + } + ); + + // While + foo!( + while x { + foo(); + bar(); + } + ); + + // WhileLet + foo!( + while let Some(..) = x { + foo(); + bar(); + } + ); + + // ForLoop + foo!( + for x in y { + foo(); + bar(); + } + ); + + // Loop + foo!( + loop { + foo(); + bar(); + } + ); + + // Tuple + foo(( + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + )); + + // AddrOf + foo(&bar( + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + )); + + // Box + foo(box Bar { + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + }); + + // Unary + foo(!bar( + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + )); + + // Try + foo(bar( + aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, + bbbbbbbbbbbbbbbbbbbbbbbbbbbbbb, + )?); + + // Cast + foo(Bar { + xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx, + xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx, + } as i64); +} diff --git a/tests/target/combining.rs b/tests/target/configs-combine_control_expr-true.rs similarity index 98% rename from tests/target/combining.rs rename to tests/target/configs-combine_control_expr-true.rs index de9ee656f68..925d2233539 100644 --- a/tests/target/combining.rs +++ b/tests/target/configs-combine_control_expr-true.rs @@ -1,4 +1,5 @@ // rustfmt-fn_call_style: Block +// rustfmt-combine_control_expr: true // Combining openings and closings. See https://github.com/rust-lang-nursery/fmt-rfcs/issues/61. fn main() {