From 8219d15291e0474f196f03e9f2245ed0dc50e6f2 Mon Sep 17 00:00:00 2001 From: Erik Johnston Date: Fri, 1 Apr 2016 22:59:35 +0100 Subject: [PATCH] Fix incorrect indent with fn_args_layout: Block The closing parenthesis for the arg list was written on a new line without first applying the appropriate indent. --- src/items.rs | 1 + tests/source/fn-custom-6.rs | 6 ++++ tests/source/fn-custom-7.rs | 6 ++++ tests/source/fn_args_layout-block.rs | 24 +++++++++++++++ tests/target/fn-custom-6.rs | 12 ++++++++ tests/target/fn-custom-7.rs | 14 +++++++++ tests/target/fn_args_layout-block.rs | 46 ++++++++++++++++++++++++++++ 7 files changed, 109 insertions(+) create mode 100644 tests/source/fn_args_layout-block.rs create mode 100644 tests/target/fn_args_layout-block.rs diff --git a/src/items.rs b/src/items.rs index 97f12df8187..2e0cac0df07 100644 --- a/src/items.rs +++ b/src/items.rs @@ -1339,6 +1339,7 @@ fn rewrite_fn_base(context: &RewriteContext, result.push_str(&arg_str); if context.config.fn_args_layout == StructLitStyle::Block { result.push('\n'); + result.push_str(&indent.to_string(context.config)); } result.push(')'); diff --git a/tests/source/fn-custom-6.rs b/tests/source/fn-custom-6.rs index 1042fa5bd88..7941d3a215e 100644 --- a/tests/source/fn-custom-6.rs +++ b/tests/source/fn-custom-6.rs @@ -34,3 +34,9 @@ fn foo(a: Aaaaaaaaaaaaaa, b: Bbbbbbbbbbbbbb) -> String where T: UUUUUUUUUUU { fn bar(a: Aaaaaaaaaaaaaa, b: Bbbbbbbbbbbbbb, c: Cccccccccccccccccc, d: Dddddddddddddddd, e: Eeeeeeeeeeeeeee) -> String where T: UUUUUUUUUUU { bar(); } + +trait Test { + fn foo(a: u8) {} + + fn bar(a: u8) -> String {} +} diff --git a/tests/source/fn-custom-7.rs b/tests/source/fn-custom-7.rs index 6a56c440d33..98f457207e3 100644 --- a/tests/source/fn-custom-7.rs +++ b/tests/source/fn-custom-7.rs @@ -17,3 +17,9 @@ fn foo(a: u8 /* Comment 1 */, b: u8 /* Comment 2 */) -> u8 { fn foo(/* Comment 1 */ a: u8, /* Comment 2 */ b: u8) -> u8 { bar() } + +trait Test { + fn foo(a: u8) {} + + fn bar(a: u8) -> String {} +} diff --git a/tests/source/fn_args_layout-block.rs b/tests/source/fn_args_layout-block.rs new file mode 100644 index 00000000000..07cc983d5a8 --- /dev/null +++ b/tests/source/fn_args_layout-block.rs @@ -0,0 +1,24 @@ +// rustfmt-fn_args_layout: Block + + +fn foo(a: Aaaaaaaaaaaaaa, b: Bbbbbbbbbbbbbb) { + foo(); +} + +fn bar(a: Aaaaaaaaaaaaaa, b: Bbbbbbbbbbbbbb, c: Cccccccccccccccccc, d: Dddddddddddddddd, e: Eeeeeeeeeeeeeee) { + bar(); +} + +fn foo(a: Aaaaaaaaaaaaaa, b: Bbbbbbbbbbbbbb) -> String { + foo(); +} + +fn bar(a: Aaaaaaaaaaaaaa, b: Bbbbbbbbbbbbbb, c: Cccccccccccccccccc, d: Dddddddddddddddd, e: Eeeeeeeeeeeeeee) -> String { + bar(); +} + +trait Test { + fn foo(a: u8) {} + + fn bar(a: u8) -> String {} +} diff --git a/tests/target/fn-custom-6.rs b/tests/target/fn-custom-6.rs index bea50c6a3ce..8c1f89173d7 100644 --- a/tests/target/fn-custom-6.rs +++ b/tests/target/fn-custom-6.rs @@ -68,3 +68,15 @@ fn bar( where T: UUUUUUUUUUU { bar(); } + +trait Test { + fn foo( + a: u8 + ) { + } + + fn bar( + a: u8 + ) -> String { + } +} diff --git a/tests/target/fn-custom-7.rs b/tests/target/fn-custom-7.rs index 1c4cbde24b8..c58678d45d9 100644 --- a/tests/target/fn-custom-7.rs +++ b/tests/target/fn-custom-7.rs @@ -30,3 +30,17 @@ fn foo( { bar() } + +trait Test { + fn foo( + a: u8 + ) + { + } + + fn bar( + a: u8 + ) -> String + { + } +} diff --git a/tests/target/fn_args_layout-block.rs b/tests/target/fn_args_layout-block.rs new file mode 100644 index 00000000000..7e1318a7a3c --- /dev/null +++ b/tests/target/fn_args_layout-block.rs @@ -0,0 +1,46 @@ +// rustfmt-fn_args_layout: Block + + +fn foo( + a: Aaaaaaaaaaaaaa, b: Bbbbbbbbbbbbbb +) { + foo(); +} + +fn bar( + a: Aaaaaaaaaaaaaa, + b: Bbbbbbbbbbbbbb, + c: Cccccccccccccccccc, + d: Dddddddddddddddd, + e: Eeeeeeeeeeeeeee +) { + bar(); +} + +fn foo( + a: Aaaaaaaaaaaaaa, b: Bbbbbbbbbbbbbb +) -> String { + foo(); +} + +fn bar( + a: Aaaaaaaaaaaaaa, + b: Bbbbbbbbbbbbbb, + c: Cccccccccccccccccc, + d: Dddddddddddddddd, + e: Eeeeeeeeeeeeeee +) -> String { + bar(); +} + +trait Test { + fn foo( + a: u8 + ) { + } + + fn bar( + a: u8 + ) -> String { + } +}