@@ -4,6 +4,7 @@ use quick_xml::escape::{escape, unescape};
4
4
use quick_xml:: events:: Event ;
5
5
use quick_xml:: name:: QName ;
6
6
use quick_xml:: reader:: { NsReader , Reader } ;
7
+ use std:: hint:: black_box;
7
8
8
9
static SAMPLE : & str = include_str ! ( "../tests/documents/sample_rss.xml" ) ;
9
10
static PLAYERS : & str = include_str ! ( "../tests/documents/players.xml" ) ;
@@ -31,7 +32,7 @@ fn read_event(c: &mut Criterion) {
31
32
b. iter ( || {
32
33
let mut r = Reader :: from_str ( SAMPLE ) ;
33
34
r. config_mut ( ) . check_end_names = false ;
34
- let mut count = criterion :: black_box ( 0 ) ;
35
+ let mut count = black_box ( 0 ) ;
35
36
loop {
36
37
match r. read_event ( ) {
37
38
Ok ( Event :: Start ( _) ) | Ok ( Event :: Empty ( _) ) => count += 1 ,
@@ -52,7 +53,7 @@ fn read_event(c: &mut Criterion) {
52
53
let config = r. config_mut ( ) ;
53
54
config. trim_text ( true ) ;
54
55
config. check_end_names = false ;
55
- let mut count = criterion :: black_box ( 0 ) ;
56
+ let mut count = black_box ( 0 ) ;
56
57
loop {
57
58
match r. read_event ( ) {
58
59
Ok ( Event :: Start ( _) ) | Ok ( Event :: Empty ( _) ) => count += 1 ,
@@ -77,7 +78,7 @@ fn read_resolved_event_into(c: &mut Criterion) {
77
78
b. iter ( || {
78
79
let mut r = NsReader :: from_str ( SAMPLE ) ;
79
80
r. config_mut ( ) . check_end_names = false ;
80
- let mut count = criterion :: black_box ( 0 ) ;
81
+ let mut count = black_box ( 0 ) ;
81
82
loop {
82
83
match r. read_resolved_event ( ) {
83
84
Ok ( ( _, Event :: Start ( _) ) ) | Ok ( ( _, Event :: Empty ( _) ) ) => count += 1 ,
@@ -98,7 +99,7 @@ fn read_resolved_event_into(c: &mut Criterion) {
98
99
let config = r. config_mut ( ) ;
99
100
config. trim_text ( true ) ;
100
101
config. check_end_names = false ;
101
- let mut count = criterion :: black_box ( 0 ) ;
102
+ let mut count = black_box ( 0 ) ;
102
103
loop {
103
104
match r. read_resolved_event ( ) {
104
105
Ok ( ( _, Event :: Start ( _) ) ) | Ok ( ( _, Event :: Empty ( _) ) ) => count += 1 ,
@@ -123,7 +124,7 @@ fn one_event(c: &mut Criterion) {
123
124
let src = format ! ( r#"<hello target="{}">"# , "world" . repeat( 512 / 5 ) ) ;
124
125
b. iter ( || {
125
126
let mut r = Reader :: from_str ( & src) ;
126
- let mut nbtxt = criterion :: black_box ( 0 ) ;
127
+ let mut nbtxt = black_box ( 0 ) ;
127
128
let config = r. config_mut ( ) ;
128
129
config. trim_text ( true ) ;
129
130
config. check_end_names = false ;
@@ -140,7 +141,7 @@ fn one_event(c: &mut Criterion) {
140
141
let src = format ! ( r#"<!-- hello "{}" -->"# , "world" . repeat( 512 / 5 ) ) ;
141
142
b. iter ( || {
142
143
let mut r = Reader :: from_str ( & src) ;
143
- let mut nbtxt = criterion :: black_box ( 0 ) ;
144
+ let mut nbtxt = black_box ( 0 ) ;
144
145
let config = r. config_mut ( ) ;
145
146
config. trim_text ( true ) ;
146
147
config. check_end_names = false ;
@@ -157,7 +158,7 @@ fn one_event(c: &mut Criterion) {
157
158
let src = format ! ( r#"<![CDATA[hello "{}"]]>"# , "world" . repeat( 512 / 5 ) ) ;
158
159
b. iter ( || {
159
160
let mut r = Reader :: from_str ( & src) ;
160
- let mut nbtxt = criterion :: black_box ( 0 ) ;
161
+ let mut nbtxt = black_box ( 0 ) ;
161
162
let config = r. config_mut ( ) ;
162
163
config. trim_text ( true ) ;
163
164
config. check_end_names = false ;
@@ -179,7 +180,7 @@ fn attributes(c: &mut Criterion) {
179
180
b. iter ( || {
180
181
let mut r = Reader :: from_str ( PLAYERS ) ;
181
182
r. config_mut ( ) . check_end_names = false ;
182
- let mut count = criterion :: black_box ( 0 ) ;
183
+ let mut count = black_box ( 0 ) ;
183
184
loop {
184
185
match r. read_event ( ) {
185
186
Ok ( Event :: Empty ( e) ) => {
@@ -200,7 +201,7 @@ fn attributes(c: &mut Criterion) {
200
201
b. iter ( || {
201
202
let mut r = Reader :: from_str ( PLAYERS ) ;
202
203
r. config_mut ( ) . check_end_names = false ;
203
- let mut count = criterion :: black_box ( 0 ) ;
204
+ let mut count = black_box ( 0 ) ;
204
205
loop {
205
206
match r. read_event ( ) {
206
207
Ok ( Event :: Empty ( e) ) => {
@@ -221,7 +222,7 @@ fn attributes(c: &mut Criterion) {
221
222
b. iter ( || {
222
223
let mut r = Reader :: from_str ( PLAYERS ) ;
223
224
r. config_mut ( ) . check_end_names = false ;
224
- let mut count = criterion :: black_box ( 0 ) ;
225
+ let mut count = black_box ( 0 ) ;
225
226
loop {
226
227
match r. read_event ( ) {
227
228
Ok ( Event :: Empty ( e) ) if e. name ( ) == QName ( b"player" ) => {
@@ -251,20 +252,20 @@ fn escaping(c: &mut Criterion) {
251
252
252
253
group. bench_function ( "no_chars_to_escape_long" , |b| {
253
254
b. iter ( || {
254
- criterion :: black_box ( escape ( LOREM_IPSUM_TEXT ) ) ;
255
+ black_box ( escape ( LOREM_IPSUM_TEXT ) ) ;
255
256
} )
256
257
} ) ;
257
258
258
259
group. bench_function ( "no_chars_to_escape_short" , |b| {
259
260
b. iter ( || {
260
- criterion :: black_box ( escape ( "just bit of text" ) ) ;
261
+ black_box ( escape ( "just bit of text" ) ) ;
261
262
} )
262
263
} ) ;
263
264
264
265
group. bench_function ( "escaped_chars_short" , |b| {
265
266
b. iter ( || {
266
- criterion :: black_box ( escape ( "age > 72 && age < 21" ) ) ;
267
- criterion :: black_box ( escape ( "\" what's that?\" " ) ) ;
267
+ black_box ( escape ( "age > 72 && age < 21" ) ) ;
268
+ black_box ( escape ( "\" what's that?\" " ) ) ;
268
269
} )
269
270
} ) ;
270
271
@@ -285,7 +286,7 @@ volutpat sed cras ornare arcu dui vivamus arcu. Cursus in hac habitasse platea d
285
286
purus. Consequat id porta nibh venenatis cras sed felis." ;
286
287
287
288
b. iter ( || {
288
- criterion :: black_box ( escape ( lorem_ipsum_with_escape_chars) ) ;
289
+ black_box ( escape ( lorem_ipsum_with_escape_chars) ) ;
289
290
} )
290
291
} ) ;
291
292
group. finish ( ) ;
@@ -297,31 +298,31 @@ fn unescaping(c: &mut Criterion) {
297
298
298
299
group. bench_function ( "no_chars_to_unescape_long" , |b| {
299
300
b. iter ( || {
300
- criterion :: black_box ( unescape ( LOREM_IPSUM_TEXT ) ) . unwrap ( ) ;
301
+ black_box ( unescape ( LOREM_IPSUM_TEXT ) ) . unwrap ( ) ;
301
302
} )
302
303
} ) ;
303
304
304
305
group. bench_function ( "no_chars_to_unescape_short" , |b| {
305
306
b. iter ( || {
306
- criterion :: black_box ( unescape ( "just a bit of text" ) ) . unwrap ( ) ;
307
+ black_box ( unescape ( "just a bit of text" ) ) . unwrap ( ) ;
307
308
} )
308
309
} ) ;
309
310
310
311
group. bench_function ( "char_reference" , |b| {
311
312
b. iter ( || {
312
313
let text = "prefix "some stuff","more stuff"" ;
313
- criterion :: black_box ( unescape ( text) ) . unwrap ( ) ;
314
+ black_box ( unescape ( text) ) . unwrap ( ) ;
314
315
let text = "&<" ;
315
- criterion :: black_box ( unescape ( text) ) . unwrap ( ) ;
316
+ black_box ( unescape ( text) ) . unwrap ( ) ;
316
317
} )
317
318
} ) ;
318
319
319
320
group. bench_function ( "entity_reference" , |b| {
320
321
b. iter ( || {
321
322
let text = "age > 72 && age < 21" ;
322
- criterion :: black_box ( unescape ( text) ) . unwrap ( ) ;
323
+ black_box ( unescape ( text) ) . unwrap ( ) ;
323
324
let text = ""what's that?"" ;
324
- criterion :: black_box ( unescape ( text) ) . unwrap ( ) ;
325
+ black_box ( unescape ( text) ) . unwrap ( ) ;
325
326
} )
326
327
} ) ;
327
328
@@ -342,7 +343,7 @@ volutpat sed cras ornare arcu dui vivamus arcu. Cursus in hac habitasse platea d
342
343
purus. Consequat id porta nibh venenatis cras sed felis." ;
343
344
344
345
b. iter ( || {
345
- criterion :: black_box ( unescape ( text) ) . unwrap ( ) ;
346
+ black_box ( unescape ( text) ) . unwrap ( ) ;
346
347
} )
347
348
} ) ;
348
349
group. finish ( ) ;
0 commit comments