]> git.lizzy.rs Git - rust.git/blob - src/tools/clippy/tests/ui/mem_discriminant.fixed
Auto merge of #78458 - Dylan-DPC:rollup-tan044s, r=Dylan-DPC
[rust.git] / src / tools / clippy / tests / ui / mem_discriminant.fixed
1 // run-rustfix
2
3 #![deny(clippy::mem_discriminant_non_enum)]
4
5 use std::mem;
6
7 enum Foo {
8     One(usize),
9     Two(u8),
10 }
11
12 fn main() {
13     // bad
14     mem::discriminant(&Some(2));
15     mem::discriminant(&None::<u8>);
16     mem::discriminant(&Foo::One(5));
17     mem::discriminant(&Foo::Two(5));
18
19     let ro = &Some(3);
20     let rro = &ro;
21     mem::discriminant(ro);
22     mem::discriminant(*rro);
23     mem::discriminant(*rro);
24
25     macro_rules! mem_discriminant_but_in_a_macro {
26         ($param:expr) => {
27             mem::discriminant($param)
28         };
29     }
30
31     mem_discriminant_but_in_a_macro!(*rro);
32
33     let rrrrro = &&&rro;
34     mem::discriminant(****rrrrro);
35     mem::discriminant(****rrrrro);
36
37     // ok
38     mem::discriminant(&Some(2));
39     mem::discriminant(&None::<u8>);
40     mem::discriminant(&Foo::One(5));
41     mem::discriminant(&Foo::Two(5));
42     mem::discriminant(ro);
43     mem::discriminant(*rro);
44     mem::discriminant(****rrrrro);
45 }