Add some basic tests for try{}
expressions
They failed to parse in rustfmt on me in https://github.com/rust-lang/rust/pull/77877, which looks like it's since been fixed, but I figured I'd send in some tests anyway.
This commit is contained in:
parent
98975e1a64
commit
278e8da33b
30
tests/source/try_block.rs
Normal file
30
tests/source/try_block.rs
Normal file
@ -0,0 +1,30 @@
|
||||
// rustfmt-edition: 2018
|
||||
|
||||
fn main() -> Result<(), !> {
|
||||
let _x: Option<_> = try {
|
||||
4
|
||||
};
|
||||
|
||||
try {}
|
||||
}
|
||||
|
||||
fn baz() -> Option<i32> {
|
||||
if (1 == 1) {
|
||||
return try {
|
||||
5
|
||||
};
|
||||
}
|
||||
|
||||
// test
|
||||
let x: Option<()> = try {
|
||||
// try blocks are great
|
||||
};
|
||||
|
||||
let y: Option<i32> = try {
|
||||
6
|
||||
}; // comment
|
||||
|
||||
let x: Option<i32> = try { baz()?; baz()?; baz()?; 7 };
|
||||
|
||||
return None;
|
||||
}
|
29
tests/target/try_block.rs
Normal file
29
tests/target/try_block.rs
Normal file
@ -0,0 +1,29 @@
|
||||
// rustfmt-edition: 2018
|
||||
|
||||
fn main() -> Result<(), !> {
|
||||
let _x: Option<_> = try { 4 };
|
||||
|
||||
try {}
|
||||
}
|
||||
|
||||
fn baz() -> Option<i32> {
|
||||
if (1 == 1) {
|
||||
return try { 5 };
|
||||
}
|
||||
|
||||
// test
|
||||
let x: Option<()> = try {
|
||||
// try blocks are great
|
||||
};
|
||||
|
||||
let y: Option<i32> = try { 6 }; // comment
|
||||
|
||||
let x: Option<i32> = try {
|
||||
baz()?;
|
||||
baz()?;
|
||||
baz()?;
|
||||
7
|
||||
};
|
||||
|
||||
return None;
|
||||
}
|
Loading…
Reference in New Issue
Block a user