File tree 3 files changed +54
-25
lines changed
3 files changed +54
-25
lines changed Original file line number Diff line number Diff line change 10
10
11
11
use test:: Bencher ;
12
12
13
- // Completely miscellaneous language-construct benchmarks.
14
13
// Static/dynamic method dispatch
15
14
16
15
struct Struct {
@@ -43,27 +42,3 @@ fn trait_static_method_call(b: &mut Bencher) {
43
42
s. method ( )
44
43
} ) ;
45
44
}
46
-
47
- // Overhead of various match forms
48
-
49
- #[ bench]
50
- fn match_option_some ( b : & mut Bencher ) {
51
- let x = Some ( 10 ) ;
52
- b. iter ( || {
53
- match x {
54
- Some ( y) => y,
55
- None => 11
56
- }
57
- } ) ;
58
- }
59
-
60
- #[ bench]
61
- fn match_vec_pattern ( b : & mut Bencher ) {
62
- let x = [ 1 , 2 , 3 , 4 , 5 , 6 ] ;
63
- b. iter ( || {
64
- match x {
65
- [ 1 , 2 , 3 , ..] => 10 ,
66
- _ => 11 ,
67
- }
68
- } ) ;
69
- }
Original file line number Diff line number Diff line change
1
+ // Copyright 2017 The Rust Project Developers. See the COPYRIGHT
2
+ // file at the top-level directory of this distribution and at
3
+ // http://rust-lang.org/COPYRIGHT.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6
+ // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7
+ // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8
+ // option. This file may not be copied, modified, or distributed
9
+ // except according to those terms.
10
+
11
+ #![ deny( warnings) ]
12
+
13
+ #![ feature( slice_patterns) ]
14
+ #![ feature( test) ]
15
+
16
+ extern crate test;
17
+
18
+ mod dispatch;
19
+ mod match;
Original file line number Diff line number Diff line change
1
+ // Copyright 2017 The Rust Project Developers. See the COPYRIGHT
2
+ // file at the top-level directory of this distribution and at
3
+ // http://rust-lang.org/COPYRIGHT.
4
+ //
5
+ // Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6
+ // http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7
+ // <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8
+ // option. This file may not be copied, modified, or distributed
9
+ // except according to those terms.
10
+
11
+ use test:: Bencher ;
12
+
13
+ // Overhead of various match forms
14
+
15
+ #[ bench]
16
+ fn option_some ( b : & mut Bencher ) {
17
+ let x = Some ( 10 ) ;
18
+ b. iter ( || {
19
+ match x {
20
+ Some ( y) => y,
21
+ None => 11
22
+ }
23
+ } ) ;
24
+ }
25
+
26
+ #[ bench]
27
+ fn vec_pattern ( b : & mut Bencher ) {
28
+ let x = [ 1 , 2 , 3 , 4 , 5 , 6 ] ;
29
+ b. iter ( || {
30
+ match x {
31
+ [ 1 , 2 , 3 , ..] => 10 ,
32
+ _ => 11 ,
33
+ }
34
+ } ) ;
35
+ }
You can’t perform that action at this time.
0 commit comments