]> git.lizzy.rs Git - rust.git/blob - tests/ui/filter_methods.rs
Merge remote-tracking branch 'upstream/master'
[rust.git] / tests / ui / filter_methods.rs
1 // Copyright 2014-2018 The Rust Project Developers. See the COPYRIGHT
2 // file at the top-level directory of this distribution.
3 //
4 // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
5 // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
6 // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
7 // option. This file may not be copied, modified, or distributed
8 // except according to those terms.
9
10
11
12
13
14 #![warn(clippy::all, clippy::pedantic)]
15 #![allow(clippy::missing_docs_in_private_items)]
16
17 fn main() {
18     let _: Vec<_> = vec![5; 6].into_iter()
19                               .filter(|&x| x == 0)
20                               .map(|x| x * 2)
21                               .collect();
22
23     let _: Vec<_> = vec![5_i8; 6].into_iter()
24                                 .filter(|&x| x == 0)
25                                 .flat_map(|x| x.checked_mul(2))
26                                 .collect();
27
28     let _: Vec<_> = vec![5_i8; 6].into_iter()
29                                 .filter_map(|x| x.checked_mul(2))
30                                 .flat_map(|x| x.checked_mul(2))
31                                 .collect();
32
33     let _: Vec<_> = vec![5_i8; 6].into_iter()
34                                 .filter_map(|x| x.checked_mul(2))
35                                 .map(|x| x.checked_mul(2))
36                                 .collect();
37 }