]>
Commit | Line | Data |
---|---|---|
136023e0 XL |
1 | // run-rustfix |
2 | #![warn(clippy::extend_with_drain)] | |
ee023bcb | 3 | #![allow(clippy::iter_with_drain)] |
136023e0 XL |
4 | use std::collections::BinaryHeap; |
5 | fn main() { | |
6 | //gets linted | |
7 | let mut vec1 = vec![0u8; 1024]; | |
8 | let mut vec2: std::vec::Vec<u8> = Vec::new(); | |
136023e0 XL |
9 | vec2.extend(vec1.drain(..)); |
10 | ||
11 | let mut vec3 = vec![0u8; 1024]; | |
12 | let mut vec4: std::vec::Vec<u8> = Vec::new(); | |
13 | ||
14 | vec4.extend(vec3.drain(..)); | |
15 | ||
16 | let mut vec11: std::vec::Vec<u8> = Vec::new(); | |
17 | ||
18 | vec11.extend(return_vector().drain(..)); | |
19 | ||
ee023bcb | 20 | //won't get linted it doesn't move the entire content of a vec into another |
136023e0 XL |
21 | let mut test1 = vec![0u8, 10]; |
22 | let mut test2: std::vec::Vec<u8> = Vec::new(); | |
23 | ||
24 | test2.extend(test1.drain(4..10)); | |
25 | ||
26 | let mut vec3 = vec![0u8; 104]; | |
27 | let mut vec7: std::vec::Vec<u8> = Vec::new(); | |
28 | ||
29 | vec3.append(&mut vec7); | |
30 | ||
31 | let mut vec5 = vec![0u8; 1024]; | |
32 | let mut vec6: std::vec::Vec<u8> = Vec::new(); | |
33 | ||
34 | vec5.extend(vec6.drain(..4)); | |
35 | ||
36 | let mut vec9: std::vec::Vec<u8> = Vec::new(); | |
37 | ||
38 | return_vector().append(&mut vec9); | |
39 | ||
40 | //won't get linted because it is not a vec | |
41 | ||
42 | let mut heap = BinaryHeap::from(vec![1, 3]); | |
43 | let mut heap2 = BinaryHeap::from(vec![]); | |
94222f64 XL |
44 | heap2.extend(heap.drain()); |
45 | ||
46 | let mut x = vec![0, 1, 2, 3, 5]; | |
47 | let ref_x = &mut x; | |
48 | let mut y = Vec::new(); | |
49 | y.extend(ref_x.drain(..)); | |
136023e0 XL |
50 | } |
51 | ||
52 | fn return_vector() -> Vec<u8> { | |
53 | let mut new_vector = vec![]; | |
54 | ||
55 | for i in 1..10 { | |
56 | new_vector.push(i) | |
57 | } | |
58 | ||
59 | new_vector | |
60 | } |