mirror of
https://github.com/rust-lang/rust-clippy
synced 2024-12-01 08:59:23 +00:00
07f1edf2d4
- rename it to bind_instead_of_map
73 lines
2.8 KiB
Text
73 lines
2.8 KiB
Text
error: using `Option.and_then(|x| Some(y))`, which is more succinctly expressed as `map(|x| y)`
|
|
--> $DIR/bind_instead_of_map_multipart.rs:5:13
|
|
|
|
|
LL | let _ = Some("42").and_then(|s| if s.len() < 42 { Some(0) } else { Some(s.len()) });
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
|
note: the lint level is defined here
|
|
--> $DIR/bind_instead_of_map_multipart.rs:1:9
|
|
|
|
|
LL | #![deny(clippy::bind_instead_of_map)]
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
help: try this
|
|
|
|
|
LL | let _ = Some("42").map(|s| if s.len() < 42 { 0 } else { s.len() });
|
|
| ^^^ ^ ^^^^^^^
|
|
|
|
error: using `Result.and_then(|x| Ok(y))`, which is more succinctly expressed as `map(|x| y)`
|
|
--> $DIR/bind_instead_of_map_multipart.rs:8:13
|
|
|
|
|
LL | let _ = Ok::<_, ()>("42").and_then(|s| if s.len() < 42 { Ok(0) } else { Ok(s.len()) });
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
|
help: try this
|
|
|
|
|
LL | let _ = Ok::<_, ()>("42").map(|s| if s.len() < 42 { 0 } else { s.len() });
|
|
| ^^^ ^ ^^^^^^^
|
|
|
|
error: using `Result.or_else(|x| Err(y))`, which is more succinctly expressed as `map_err(|x| y)`
|
|
--> $DIR/bind_instead_of_map_multipart.rs:11:13
|
|
|
|
|
LL | let _ = Err::<(), _>("42").or_else(|s| if s.len() < 42 { Err(s.len() + 20) } else { Err(s.len()) });
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
|
help: try this
|
|
|
|
|
LL | let _ = Err::<(), _>("42").map_err(|s| if s.len() < 42 { s.len() + 20 } else { s.len() });
|
|
| ^^^^^^^ ^^^^^^^^^^^^ ^^^^^^^
|
|
|
|
error: using `Option.and_then(|x| Some(y))`, which is more succinctly expressed as `map(|x| y)`
|
|
--> $DIR/bind_instead_of_map_multipart.rs:19:5
|
|
|
|
|
LL | / Some("42").and_then(|s| {
|
|
LL | | if {
|
|
LL | | if s == "43" {
|
|
LL | | return Some(43);
|
|
... |
|
|
LL | | }
|
|
LL | | });
|
|
| |______^
|
|
|
|
|
help: try this
|
|
|
|
|
LL | Some("42").map(|s| {
|
|
LL | if {
|
|
LL | if s == "43" {
|
|
LL | return 43;
|
|
LL | }
|
|
LL | s == "42"
|
|
...
|
|
|
|
error: using `Option.and_then(|x| Some(y))`, which is more succinctly expressed as `map(|x| y)`
|
|
--> $DIR/bind_instead_of_map_multipart.rs:60:13
|
|
|
|
|
LL | let _ = Some("").and_then(|s| if s.len() == 20 { Some(m!()) } else { Some(Some(20)) });
|
|
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
|
help: try this
|
|
|
|
|
LL | let _ = Some("").map(|s| if s.len() == 20 { m!() } else { Some(20) });
|
|
| ^^^ ^^^^ ^^^^^^^^
|
|
|
|
error: aborting due to 5 previous errors
|
|
|