]> git.lizzy.rs Git - rust.git/blob - tests/ui/result_map_unwrap_or_else.rs
Auto merge of #3635 - matthiaskrgr:revert_random_state_3603, r=xfix
[rust.git] / tests / ui / result_map_unwrap_or_else.rs
1 // Copyright 2014-2019 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 // aux-build:option_helpers.rs
11
12 //! Checks implementation of `RESULT_MAP_UNWRAP_OR_ELSE`
13
14 #![warn(clippy::result_map_unwrap_or_else)]
15
16 #[macro_use]
17 extern crate option_helpers;
18
19 fn result_methods() {
20     let res: Result<i32, ()> = Ok(1);
21
22     // Check RESULT_MAP_UNWRAP_OR_ELSE
23     // single line case
24     let _ = res.map(|x| x + 1).unwrap_or_else(|e| 0); // should lint even though this call is on a separate line
25                                                       // multi line cases
26     let _ = res.map(|x| x + 1).unwrap_or_else(|e| 0);
27     let _ = res.map(|x| x + 1).unwrap_or_else(|e| 0);
28     // macro case
29     let _ = opt_map!(res, |x| x + 1).unwrap_or_else(|e| 0); // should not lint
30 }
31
32 fn main() {}