]> git.lizzy.rs Git - rust.git/blob - library/alloc/benches/linked_list.rs
Rollup merge of #107271 - Zeegomo:drop-rmw, r=oli-obk
[rust.git] / library / alloc / benches / linked_list.rs
1 use std::collections::LinkedList;
2 use test::Bencher;
3
4 #[bench]
5 fn bench_collect_into(b: &mut Bencher) {
6     let v = &[0; 64];
7     b.iter(|| {
8         let _: LinkedList<_> = v.iter().cloned().collect();
9     })
10 }
11
12 #[bench]
13 fn bench_push_front(b: &mut Bencher) {
14     let mut m: LinkedList<_> = LinkedList::new();
15     b.iter(|| {
16         m.push_front(0);
17     })
18 }
19
20 #[bench]
21 fn bench_push_back(b: &mut Bencher) {
22     let mut m: LinkedList<_> = LinkedList::new();
23     b.iter(|| {
24         m.push_back(0);
25     })
26 }
27
28 #[bench]
29 fn bench_push_back_pop_back(b: &mut Bencher) {
30     let mut m: LinkedList<_> = LinkedList::new();
31     b.iter(|| {
32         m.push_back(0);
33         m.pop_back();
34     })
35 }
36
37 #[bench]
38 fn bench_push_front_pop_front(b: &mut Bencher) {
39     let mut m: LinkedList<_> = LinkedList::new();
40     b.iter(|| {
41         m.push_front(0);
42         m.pop_front();
43     })
44 }
45
46 #[bench]
47 fn bench_iter(b: &mut Bencher) {
48     let v = &[0; 128];
49     let m: LinkedList<_> = v.iter().cloned().collect();
50     b.iter(|| {
51         assert!(m.iter().count() == 128);
52     })
53 }
54 #[bench]
55 fn bench_iter_mut(b: &mut Bencher) {
56     let v = &[0; 128];
57     let mut m: LinkedList<_> = v.iter().cloned().collect();
58     b.iter(|| {
59         assert!(m.iter_mut().count() == 128);
60     })
61 }
62 #[bench]
63 fn bench_iter_rev(b: &mut Bencher) {
64     let v = &[0; 128];
65     let m: LinkedList<_> = v.iter().cloned().collect();
66     b.iter(|| {
67         assert!(m.iter().rev().count() == 128);
68     })
69 }
70 #[bench]
71 fn bench_iter_mut_rev(b: &mut Bencher) {
72     let v = &[0; 128];
73     let mut m: LinkedList<_> = v.iter().cloned().collect();
74     b.iter(|| {
75         assert!(m.iter_mut().rev().count() == 128);
76     })
77 }