rust/tests/ui/if_let_some_result.rs

36 lines
562 B
Rust
Raw Normal View History

2020-01-09 17:34:13 -06:00
// run-rustfix
2018-07-28 10:34:52 -05:00
#![warn(clippy::if_let_some_result)]
2016-10-02 15:49:29 -05:00
fn str_to_int(x: &str) -> i32 {
if let Some(y) = x.parse().ok() {
2016-10-02 15:49:29 -05:00
y
} else {
0
}
}
fn str_to_int_ok(x: &str) -> i32 {
if let Ok(y) = x.parse() {
y
} else {
0
}
}
2020-01-18 19:00:34 -06:00
#[rustfmt::skip]
fn strange_some_no_else(x: &str) -> i32 {
2020-01-09 17:34:13 -06:00
{
2020-01-18 19:00:34 -06:00
if let Some(y) = x . parse() . ok() {
2020-01-09 17:34:13 -06:00
return y;
};
0
}
}
2016-10-02 15:49:29 -05:00
fn main() {
2020-01-10 12:05:10 -06:00
let _ = str_to_int("1");
let _ = str_to_int_ok("2");
2020-01-18 19:00:34 -06:00
let _ = strange_some_no_else("3");
2016-10-02 15:49:29 -05:00
}