diff options
| author | Marcus Klaas de Vries <mail@marcusklaas.nl> | 2015-10-22 22:33:24 +0200 |
|---|---|---|
| committer | Marcus Klaas de Vries <mail@marcusklaas.nl> | 2015-10-22 22:33:24 +0200 |
| commit | 7e76fad1f55945c196b32e6629ebaecc4ebfda74 (patch) | |
| tree | 85efc67ea1bfa81ac8a64d461206843fc706ae43 /tests/source | |
| parent | 032e6ae8332dd3a4bc10617e53ebd71835bb713d (diff) | |
| parent | 2d267b16d1f28e7ab14cd1cc9953ae21fe1856c6 (diff) | |
Merge pull request #485 from marcusklaas/floaters2
Deal with floaters
Diffstat (limited to 'tests/source')
| -rw-r--r-- | tests/source/chains-block-indented-base.rs | 30 | ||||
| -rw-r--r-- | tests/source/chains.rs | 46 |
2 files changed, 76 insertions, 0 deletions
diff --git a/tests/source/chains-block-indented-base.rs b/tests/source/chains-block-indented-base.rs new file mode 100644 index 00000000000..05459dc6973 --- /dev/null +++ b/tests/source/chains-block-indented-base.rs @@ -0,0 +1,30 @@ +// rustfmt-chain_base_indent: Inherit +// Test chain formatting with block indented base + +fn floaters() { + let x = Foo { + field1: val1, + field2: val2, + } + .method_call().method_call(); + + let y = if cond { + val1 + } else { + val2 + } + .method_call(); + + { + match x { + PushParam => { + // params are 1-indexed + stack.push(mparams[match cur.to_digit(10) { + Some(d) => d as usize - 1, + None => return Err("bad param number".to_owned()), + }] + .clone()); + } + } + } +} diff --git a/tests/source/chains.rs b/tests/source/chains.rs index 2a400b306d2..a50a9c51253 100644 --- a/tests/source/chains.rs +++ b/tests/source/chains.rs @@ -55,3 +55,49 @@ fn main() { x }).filter(some_mod::some_filter) } + +fn floaters() { + let z = Foo { + field1: val1, + field2: val2, + }; + + let x = Foo { + field1: val1, + field2: val2, + }.method_call().method_call(); + + let y = if cond { + val1 + } else { + val2 + } + .method_call(); + + { + match x { + PushParam => { + // params are 1-indexed + stack.push(mparams[match cur.to_digit(10) { + Some(d) => d as usize - 1, + None => return Err("bad param number".to_owned()), + }] + .clone()); + } + } + } + + if cond { some(); } else { none(); } + .bar() + .baz(); + + Foo { x: val } .baz(|| { /*force multiline */ }) .quux(); + + Foo { y: i_am_multi_line, z: ok } + .baz(|| { + // force multiline + }) + .quux(); + + a + match x { true => "yay!", false => "boo!" }.bar() +} |
