File tree Expand file tree Collapse file tree 3 files changed +9
-1
lines changed Expand file tree Collapse file tree 3 files changed +9
-1
lines changed Original file line number Diff line number Diff line change 5
5
6
6
fn main() {
7
7
let _: Vec<_> = vec![5_i8; 6].into_iter().flat_map(|x| 0..x).collect();
8
+ let _: Option<_> = (Some(Some(1))).and_then(|x| x);
8
9
}
Original file line number Diff line number Diff line change 5
5
6
6
fn main ( ) {
7
7
let _: Vec < _ > = vec ! [ 5_i8 ; 6 ] . into_iter ( ) . map ( |x| 0 ..x) . flatten ( ) . collect ( ) ;
8
+ let _: Option < _ > = ( Some ( Some ( 1 ) ) ) . map ( |x| x) . flatten ( ) ;
8
9
}
Original file line number Diff line number Diff line change @@ -6,5 +6,11 @@ LL | let _: Vec<_> = vec![5_i8; 6].into_iter().map(|x| 0..x).flatten().colle
6
6
|
7
7
= note: `-D clippy::map-flatten` implied by `-D warnings`
8
8
9
- error: aborting due to previous error
9
+ error: called `map(..).flatten()` on an `Option`. This is more succinctly expressed by calling `.and_then(..)`
10
+ --> $DIR/map_flatten.rs:8:24
11
+ |
12
+ LL | let _: Option<_> = (Some(Some(1))).map(|x| x).flatten();
13
+ | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try using `and_then` instead: `(Some(Some(1))).and_then(|x| x)`
14
+
15
+ error: aborting due to 2 previous errors
10
16
You can’t perform that action at this time.
0 commit comments