13
13
import TestsUtils
14
14
15
15
public let benchmarks = [
16
- BenchmarkInfo ( name: " StringRepeatingSingleAsciiCharacterCount10 " ,
17
- runFunction: run_singleAsciiCharacterCount10 ,
16
+ BenchmarkInfo ( name: " String.initRepeating.1AsciiChar.Count100 " ,
17
+ runFunction: run_singleAsciiCharacterCount100 ,
18
18
tags: [ . validation, . api, . String] ) ,
19
- BenchmarkInfo ( name: " StringRepeatingSingleAsciiCharacterCount1 " ,
20
- runFunction: run_singleAsciiCharacterCount1,
21
- tags: [ . validation, . api, . String] ) ,
22
- BenchmarkInfo ( name: " StringRepeatingEmptyStringCount10 " ,
23
- runFunction: run_emptyStringCount10,
24
- tags: [ . validation, . api, . String] ) ,
25
- BenchmarkInfo ( name: " StringRepeatingSingleAsciiCharacterCount0 " ,
26
- runFunction: run_singleAsciiCharacterCount0,
27
- tags: [ . validation, . api, . String] ) ,
28
- BenchmarkInfo ( name: " StringRepeating26AsciiCharactersCount2 " ,
19
+ BenchmarkInfo ( name: " String.initRepeating.26AsciiChar.Count2 " ,
29
20
runFunction: run_26AsciiCharactersCount2,
30
21
tags: [ . validation, . api, . String] ) ,
31
- BenchmarkInfo ( name: " StringRepeatingSingleCyrillicCharacterCount5 " ,
32
- runFunction: run_singleCyrillicCharacterCount5,
33
- tags: [ . validation, . api, . String] ) ,
34
- BenchmarkInfo ( name: " StringRepeating33CyrillicCharactersCount2 " ,
22
+ BenchmarkInfo ( name: " String.initRepeating.33CyrillicChar.Count2 " ,
35
23
runFunction: run_33CyrillicCharactersCount2,
36
24
tags: [ . validation, . api, . String] ) ,
37
- BenchmarkInfo ( name: " StringRepeatingU1F1F8U1F1FACount2 " ,
38
- runFunction: run_U1F1F8U1F1FACount2,
39
- tags: [ . validation, . api, . String] ) ,
40
- BenchmarkInfo ( name: " StringRepeatingU301cafeCount5 " ,
41
- runFunction: run_U301cafeCount5,
42
- tags: [ . validation, . api, . String] ) ,
43
- BenchmarkInfo ( name: " StringRepeatingLongMixedStringCount100 " ,
25
+ BenchmarkInfo ( name: " String.initRepeating.longMixedString.Count100 " ,
44
26
runFunction: run_longMixedStringCount100,
45
27
tags: [ . validation, . api, . String] )
46
28
]
@@ -52,30 +34,9 @@ func repeating(_ i: String, count: Int) -> String {
52
34
}
53
35
54
36
@inline ( never)
55
- public func run_singleAsciiCharacterCount10( N: Int ) {
56
- for _ in 1 ... 5000 * N {
57
- blackHole ( repeating ( " x " , count: 10 ) )
58
- }
59
- }
60
-
61
- @inline ( never)
62
- public func run_singleAsciiCharacterCount1( N: Int ) {
63
- for _ in 1 ... 5000 * N {
64
- blackHole ( repeating ( " x " , count: 1 ) )
65
- }
66
- }
67
-
68
- @inline ( never)
69
- public func run_emptyStringCount10( N: Int ) {
70
- for _ in 1 ... 5000 * N {
71
- blackHole ( repeating ( " " , count: 10 ) )
72
- }
73
- }
74
-
75
- @inline ( never)
76
- public func run_singleAsciiCharacterCount0( N: Int ) {
37
+ public func run_singleAsciiCharacterCount100( N: Int ) {
77
38
for _ in 1 ... 5000 * N {
78
- blackHole ( repeating ( " x " , count: 0 ) )
39
+ blackHole ( repeating ( " x " , count: 100 ) )
79
40
}
80
41
}
81
42
@@ -86,34 +47,13 @@ public func run_26AsciiCharactersCount2(N: Int) {
86
47
}
87
48
}
88
49
89
- @inline ( never)
90
- public func run_singleCyrillicCharacterCount5( N: Int ) {
91
- for _ in 1 ... 5000 * N {
92
- blackHole ( repeating ( " я " , count: 5 ) )
93
- }
94
- }
95
-
96
50
@inline ( never)
97
51
public func run_33CyrillicCharactersCount2( N: Int ) {
98
52
for _ in 1 ... 5000 * N {
99
53
blackHole ( repeating ( " абвгґдеєжзиіїйклмнопрстуфхцчшщьюя " , count: 2 ) )
100
54
}
101
55
}
102
56
103
- @inline ( never)
104
- public func run_U1F1F8U1F1FACount2( N: Int ) {
105
- for _ in 1 ... 5000 * N {
106
- blackHole ( repeating ( " \u{1F1F8} \u{1F1FA} \u{1F1F8} \u{1F1FA} " , count: 2 ) )
107
- }
108
- }
109
-
110
- @inline ( never)
111
- public func run_U301cafeCount5( N: Int ) {
112
- for _ in 1 ... 5000 * N {
113
- blackHole ( repeating ( " \u{301} cafe " , count: 5 ) )
114
- }
115
- }
116
-
117
57
func getLongString( ) -> String {
118
58
let long = """
119
59
Swift is a multi-paradigm, compiled programming language created for
0 commit comments