rust/tests/target/fn_args_layout-vertical.rs
Yacin Tmimi 0cb294f05c Deprecate and Rename fn_args_layout -> fn_params_layout
fn_args_layout is now deprecated.

This option was renamed to better communicate that it affects the layout
of parameters in function signatures and not the layout of arguments in
function calls.

Because the `fn_args_layout` is a stable option the renamed option is
also stable, however users who set `fn_args_layout` will get a warning
message letting them know that the option has been renamed.
2022-07-12 19:33:53 -05:00

40 lines
954 B
Rust

// rustfmt-fn_params_layout: Vertical
// Empty list should stay on one line.
fn do_bar() -> u8 {
bar()
}
// A single argument should stay on the same line.
fn do_bar(a: u8) -> u8 {
bar()
}
// Multiple arguments should each get their own line.
fn do_bar(
a: u8,
mut b: u8,
c: &u8,
d: &mut u8,
closure: &Fn(i32) -> i32,
) -> i32 {
// This feature should not affect closures.
let bar = |x: i32, y: i32| -> i32 { x + y };
bar(a, b)
}
// If the first argument doesn't fit on the same line with the function name,
// the whole list should probably be pushed to the next line with hanging
// indent. That's not what happens though, so check current behaviour instead.
// In any case, it should maintain single argument per line.
fn do_this_that_and_the_other_thing(
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa: u8,
b: u8,
c: u8,
d: u8,
) {
this();
that();
the_other_thing();
}