diff options
| -rw-r--r-- | tests/ui/unnecessary_map_or.fixed | 6 | ||||
| -rw-r--r-- | tests/ui/unnecessary_map_or.rs | 6 | ||||
| -rw-r--r-- | tests/ui/unnecessary_map_or.stderr | 14 |
3 files changed, 25 insertions, 1 deletions
diff --git a/tests/ui/unnecessary_map_or.fixed b/tests/ui/unnecessary_map_or.fixed index 2d932a70e9d..d645cd3f3c4 100644 --- a/tests/ui/unnecessary_map_or.fixed +++ b/tests/ui/unnecessary_map_or.fixed @@ -51,6 +51,12 @@ fn main() { let r: Result<i32, S> = Ok(3); let _ = r.is_ok_and(|x| x == 7); + // lint constructs that are not comparaisons as well + let func = |_x| true; + let r: Result<i32, S> = Ok(3); + let _ = r.is_ok_and(func); + let _ = Some(5).is_some_and(func); + #[derive(PartialEq)] struct S2; let r: Result<i32, S2> = Ok(4); diff --git a/tests/ui/unnecessary_map_or.rs b/tests/ui/unnecessary_map_or.rs index 4a9d69be1e9..4939d52fd43 100644 --- a/tests/ui/unnecessary_map_or.rs +++ b/tests/ui/unnecessary_map_or.rs @@ -54,6 +54,12 @@ fn main() { let r: Result<i32, S> = Ok(3); let _ = r.map_or(false, |x| x == 7); + // lint constructs that are not comparaisons as well + let func = |_x| true; + let r: Result<i32, S> = Ok(3); + let _ = r.map_or(false, func); + let _ = Some(5).map_or(false, func); + #[derive(PartialEq)] struct S2; let r: Result<i32, S2> = Ok(4); diff --git a/tests/ui/unnecessary_map_or.stderr b/tests/ui/unnecessary_map_or.stderr index 299a4e5da7a..56295594ddc 100644 --- a/tests/ui/unnecessary_map_or.stderr +++ b/tests/ui/unnecessary_map_or.stderr @@ -92,8 +92,20 @@ LL | let _ = r.map_or(false, |x| x == 7); error: this `map_or` is redundant --> tests/ui/unnecessary_map_or.rs:60:13 | +LL | let _ = r.map_or(false, func); + | ^^^^^^^^^^^^^^^^^^^^^ help: use is_ok_and instead: `r.is_ok_and(func)` + +error: this `map_or` is redundant + --> tests/ui/unnecessary_map_or.rs:61:13 + | +LL | let _ = Some(5).map_or(false, func); + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use is_some_and instead: `Some(5).is_some_and(func)` + +error: this `map_or` is redundant + --> tests/ui/unnecessary_map_or.rs:66:13 + | LL | let _ = r.map_or(false, |x| x == 8); | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use a standard comparison instead: `(r == Ok(8))` -error: aborting due to 13 previous errors +error: aborting due to 15 previous errors |
