]> git.lizzy.rs Git - rust.git/blob - src/tools/clippy/tests/ui/redundant_pattern_matching_ipaddr.rs
Auto merge of #101969 - reez12g:issue-101306, r=reez12g
[rust.git] / src / tools / clippy / tests / ui / redundant_pattern_matching_ipaddr.rs
1 // run-rustfix
2
3 #![warn(clippy::all)]
4 #![warn(clippy::redundant_pattern_matching)]
5 #![allow(unused_must_use, clippy::needless_bool, clippy::match_like_matches_macro)]
6
7 use std::net::{
8     IpAddr::{self, V4, V6},
9     Ipv4Addr, Ipv6Addr,
10 };
11
12 fn main() {
13     let ipaddr: IpAddr = V4(Ipv4Addr::LOCALHOST);
14     if let V4(_) = &ipaddr {}
15
16     if let V4(_) = V4(Ipv4Addr::LOCALHOST) {}
17
18     if let V6(_) = V6(Ipv6Addr::LOCALHOST) {}
19
20     while let V4(_) = V4(Ipv4Addr::LOCALHOST) {}
21
22     while let V6(_) = V6(Ipv6Addr::LOCALHOST) {}
23
24     if V4(Ipv4Addr::LOCALHOST).is_ipv4() {}
25
26     if V6(Ipv6Addr::LOCALHOST).is_ipv6() {}
27
28     if let V4(ipaddr) = V4(Ipv4Addr::LOCALHOST) {
29         println!("{}", ipaddr);
30     }
31
32     match V4(Ipv4Addr::LOCALHOST) {
33         V4(_) => true,
34         V6(_) => false,
35     };
36
37     match V4(Ipv4Addr::LOCALHOST) {
38         V4(_) => false,
39         V6(_) => true,
40     };
41
42     match V6(Ipv6Addr::LOCALHOST) {
43         V4(_) => false,
44         V6(_) => true,
45     };
46
47     match V6(Ipv6Addr::LOCALHOST) {
48         V4(_) => true,
49         V6(_) => false,
50     };
51
52     let _ = if let V4(_) = V4(Ipv4Addr::LOCALHOST) {
53         true
54     } else {
55         false
56     };
57
58     ipaddr_const();
59
60     let _ = if let V4(_) = gen_ipaddr() {
61         1
62     } else if let V6(_) = gen_ipaddr() {
63         2
64     } else {
65         3
66     };
67 }
68
69 fn gen_ipaddr() -> IpAddr {
70     V4(Ipv4Addr::LOCALHOST)
71 }
72
73 const fn ipaddr_const() {
74     if let V4(_) = V4(Ipv4Addr::LOCALHOST) {}
75
76     if let V6(_) = V6(Ipv6Addr::LOCALHOST) {}
77
78     while let V4(_) = V4(Ipv4Addr::LOCALHOST) {}
79
80     while let V6(_) = V6(Ipv6Addr::LOCALHOST) {}
81
82     match V4(Ipv4Addr::LOCALHOST) {
83         V4(_) => true,
84         V6(_) => false,
85     };
86
87     match V6(Ipv6Addr::LOCALHOST) {
88         V4(_) => false,
89         V6(_) => true,
90     };
91 }