@@ -119,20 +119,27 @@ public let DataBenchmarks = [
119
119
runFunction: { append ( $0, data: large, to: large) } , tags: d) ,
120
120
121
121
BenchmarkInfo ( name: " DataToStringEmpty " ,
122
- runFunction: run_DataToStringEmpty , tags: d, legacyFactor: 50 ) ,
122
+ runFunction: { string ( $0 , from : emptyData ) } , tags: d, legacyFactor: 50 ) ,
123
123
BenchmarkInfo ( name: " DataToStringSmall " ,
124
- runFunction: run_DataToStringSmall , tags: d, legacyFactor: 50 ) ,
124
+ runFunction: { string ( $0 , from : smallData ) } , tags: d, legacyFactor: 50 ) ,
125
125
BenchmarkInfo ( name: " DataToStringMedium " ,
126
- runFunction: run_DataToStringMedium , tags: d, legacyFactor: 50 ) ,
126
+ runFunction: { string ( $0 , from : mediumData ) } , tags: d, legacyFactor: 50 ) ,
127
127
128
128
BenchmarkInfo ( name: " StringToDataEmpty " ,
129
- runFunction: run_StringToDataEmpty , tags: d, legacyFactor: 50 ) ,
129
+ runFunction: { data ( $0 , from : emptyString ) } , tags: d, legacyFactor: 50 ) ,
130
130
BenchmarkInfo ( name: " StringToDataSmall " ,
131
- runFunction: run_StringToDataSmall , tags: d, legacyFactor: 50 ) ,
131
+ runFunction: { data ( $0 , from : smallString ) } , tags: d, legacyFactor: 50 ) ,
132
132
BenchmarkInfo ( name: " StringToDataMedium " ,
133
- runFunction: run_StringToDataMedium , tags: d, legacyFactor: 50 ) ,
133
+ runFunction: { data ( $0 , from : mediumString ) } , tags: d, legacyFactor: 50 ) ,
134
134
]
135
135
136
+ let emptyString = " "
137
+ let smallString = " \r \n "
138
+ let mediumString = " \r \n \r \n \r \n \r \n \r \n \r \n \r \n \r \n \r \n "
139
+ let emptyData = Data ( )
140
+ let smallData = Data ( smallString. utf8)
141
+ let mediumData = Data ( mediumString. utf8)
142
+
136
143
let small = sampleData ( . small)
137
144
let medium = sampleData ( . medium)
138
145
let large = sampleData ( . large)
@@ -309,55 +316,15 @@ public func setCount(_ N: Int, data: Data, extra: Int) {
309
316
}
310
317
311
318
@inline ( never)
312
- public func run_DataToStringEmpty( _ N: Int ) {
313
- let d = Data ( )
314
- for _ in 0 ..< 200 * N {
315
- let s = String ( decoding: d, as: UTF8 . self)
316
- blackHole ( s)
317
- }
318
- }
319
-
320
- @inline ( never)
321
- public func run_DataToStringSmall( _ N: Int ) {
322
- let d = Data ( [ 0x0D , 0x0A ] )
323
- for _ in 0 ..< 200 * N {
324
- let s = String ( decoding: d, as: UTF8 . self)
325
- blackHole ( s)
326
- }
327
- }
328
-
329
- @inline ( never)
330
- public func run_DataToStringMedium( _ N: Int ) {
331
- let d = Data ( [ 0x0D , 0x0A , 0x0D , 0x0A , 0x0D , 0x0A , 0x0D , 0x0A , 0x0D , 0x0A , 0x0D , 0x0A , 0x0D , 0x0A , 0x0D , 0x0A , 0x0D , 0x0A ] )
332
- for _ in 0 ..< 200 * N {
333
- let s = String ( decoding: d, as: UTF8 . self)
334
- blackHole ( s)
335
- }
336
- }
337
-
338
- @inline ( never)
339
- public func run_StringToDataEmpty( _ N: Int ) {
340
- let s = " "
341
- for _ in 0 ..< 200 * N {
342
- let d = Data ( s. utf8)
343
- blackHole ( d)
344
- }
345
- }
346
-
347
- @inline ( never)
348
- public func run_StringToDataSmall( _ N: Int ) {
349
- let s = " \r \n "
319
+ public func string( _ N: Int , from data: Data ) {
350
320
for _ in 0 ..< 200 * N {
351
- let d = Data ( s. utf8)
352
- blackHole ( d)
321
+ blackHole ( String ( decoding: data, as: UTF8 . self) )
353
322
}
354
323
}
355
324
356
325
@inline ( never)
357
- public func run_StringToDataMedium( _ N: Int ) {
358
- let s = " \r \n \r \n \r \n \r \n \r \n \r \n \r \n \r \n \r \n "
326
+ public func data( _ N: Int , from string: String ) {
359
327
for _ in 0 ..< 200 * N {
360
- let d = Data ( s. utf8)
361
- blackHole ( d)
328
+ blackHole ( Data ( string. utf8) )
362
329
}
363
330
}
0 commit comments