| // rustfmt-edition: 2018 | |
| #![feature(try_blocks_heterogeneous)] | |
| fn main() -> Result<(), !> { | |
| let _x = try bikeshed Option<_> { | |
| 4 | |
| }; | |
| try bikeshed Result<_, _> {} | |
| } | |
| fn baz() -> Option<i32> { | |
| if (1 == 1) { | |
| return try bikeshed Option<i32> { | |
| 5 | |
| }; | |
| } | |
| // test | |
| let x = try bikeshed Option<()> { | |
| // try blocks are great | |
| }; | |
| let y = try bikeshed Option<i32> { | |
| 6 | |
| }; // comment | |
| let x = try /* Invisible comment */ bikeshed Option<()> {}; | |
| let x = try bikeshed /* Invisible comment */ Option<()> {}; | |
| let x = try bikeshed Option<()> /* Invisible comment */ {}; | |
| let x = try bikeshed Option<i32> { baz()?; baz()?; baz()?; 7 }; | |
| let x = try bikeshed Foo<Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar> { 1 + 1 + 1 }; | |
| let x = try bikeshed Foo<Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar, Bar> {}; | |
| let x = try bikeshed Result<VeryVeryVeryVeryVeryLongTypeForSuccess, VeryVeryVeryVeryVeryLongTypeForFailure> {}; | |
| let _ = overflowed_expr( | |
| x, | |
| try bikeshed Option<_> { | |
| foo()?; | |
| bar()?; | |
| }, | |
| ); | |
| return None; | |
| } |