]> git.lizzy.rs Git - rust.git/blob - tests/ui/starts_ends_with.rs
Stabilize tool lints
[rust.git] / tests / ui / starts_ends_with.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 #![allow(dead_code)]
14
15 fn main() {}
16
17 #[allow(clippy::unnecessary_operation)]
18 fn starts_with() {
19     "".chars().next() == Some(' ');
20     Some(' ') != "".chars().next();
21 }
22
23 fn chars_cmp_with_unwrap() {
24     let s = String::from("foo");
25     if s.chars().next().unwrap() == 'f' { // s.starts_with('f')
26         // Nothing here
27     }
28     if s.chars().next_back().unwrap() == 'o' { // s.ends_with('o')
29         // Nothing here
30     }
31     if s.chars().last().unwrap() == 'o' { // s.ends_with('o')
32         // Nothing here
33     }
34     if s.chars().next().unwrap() != 'f' { // !s.starts_with('f')
35         // Nothing here
36     }
37     if s.chars().next_back().unwrap() != 'o' { // !s.ends_with('o')
38         // Nothing here
39     }
40     if s.chars().last().unwrap() != 'o' { // !s.ends_with('o')
41         // Nothing here
42     }
43 }
44
45 #[allow(clippy::unnecessary_operation)]
46 fn ends_with() {
47     "".chars().last() == Some(' ');
48     Some(' ') != "".chars().last();
49     "".chars().next_back() == Some(' ');
50     Some(' ') != "".chars().next_back();
51 }