]> git.lizzy.rs Git - rust.git/blob - tests/ui/swap.rs
Merge pull request #2984 from flip1995/single_char_pattern
[rust.git] / tests / ui / swap.rs
1
2
3
4 #![warn(clippy)]
5 #![allow(blacklisted_name, unused_assignments)]
6
7 struct Foo(u32);
8
9 fn array() {
10     let mut foo = [1, 2];
11     let temp = foo[0];
12     foo[0] = foo[1];
13     foo[1] = temp;
14
15     foo.swap(0, 1);
16 }
17
18 fn slice() {
19     let foo = &mut [1, 2];
20     let temp = foo[0];
21     foo[0] = foo[1];
22     foo[1] = temp;
23
24     foo.swap(0, 1);
25 }
26
27 fn vec() {
28     let mut foo = vec![1, 2];
29     let temp = foo[0];
30     foo[0] = foo[1];
31     foo[1] = temp;
32
33     foo.swap(0, 1);
34 }
35
36 fn main() {
37     array();
38     slice();
39     vec();
40
41     let mut a = 42;
42     let mut b = 1337;
43
44     a = b;
45     b = a;
46
47     ; let t = a;
48     a = b;
49     b = t;
50
51     let mut c = Foo(42);
52
53     c.0 = a;
54     a = c.0;
55
56     ; let t = c.0;
57     c.0 = a;
58     a = t;
59 }