1 // run-rustfix
2 
3 #![allow(unused, clippy::needless_pass_by_value, clippy::collapsible_if)]
4 #![warn(clippy::map_entry)]
5 
6 use std::collections::{BTreeMap, HashMap};
7 use std::hash::Hash;
8 
9 macro_rules! m {
10     ($e:expr) => {{ $e }};
11 }
12 
foo()13 fn foo() {}
14 
insert_if_absent0<K: Eq + Hash + Copy, V: Copy>(m: &mut HashMap<K, V>, k: K, v: V, v2: V)15 fn insert_if_absent0<K: Eq + Hash + Copy, V: Copy>(m: &mut HashMap<K, V>, k: K, v: V, v2: V) {
16     if !m.contains_key(&k) {
17         m.insert(k, v);
18     } else {
19         m.insert(k, v2);
20     }
21 
22     if m.contains_key(&k) {
23         m.insert(k, v);
24     } else {
25         m.insert(k, v2);
26     }
27 
28     if !m.contains_key(&k) {
29         m.insert(k, v);
30     } else {
31         foo();
32     }
33 
34     if !m.contains_key(&k) {
35         foo();
36     } else {
37         m.insert(k, v);
38     }
39 
40     if !m.contains_key(&k) {
41         m.insert(k, v);
42     } else {
43         m.insert(k, v2);
44     }
45 
46     if m.contains_key(&k) {
47         if true { m.insert(k, v) } else { m.insert(k, v2) }
48     } else {
49         m.insert(k, v)
50     };
51 
52     if m.contains_key(&k) {
53         foo();
54         m.insert(k, v)
55     } else {
56         None
57     };
58 }
59 
main()60 fn main() {}
61