gherkin 2.11.1 → 2.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (69) hide show
  1. data/History.md +7 -0
  2. data/README.md +1 -1
  3. data/ext/gherkin_lexer_bm/gherkin_lexer_bm.c +392 -353
  4. data/ext/gherkin_lexer_ru/gherkin_lexer_ru.c +684 -671
  5. data/gherkin.gemspec +7 -7
  6. data/lib/gherkin/README.md +7 -0
  7. data/lib/gherkin/i18n.json +646 -0
  8. data/lib/gherkin/i18n.rb +5 -10
  9. data/lib/gherkin/native/therubyracer.rb +3 -2
  10. data/lib/gherkin/parser/parser.rb +12 -11
  11. data/ragel/lexer.java.rl.erb +3 -3
  12. data/ragel/lexer.js.rl.erb +5 -5
  13. data/ragel/lexer.rb.rl.erb +4 -2
  14. data/spec/gherkin/native_lexer_spec.rb +29 -0
  15. data/tasks/compile.rake +2 -39
  16. data/tasks/ragel_task.rb +15 -3
  17. metadata +19 -69
  18. data/lib/gherkin/i18n.yml +0 -613
  19. data/lib/gherkin/js_lexer.rb +0 -20
  20. data/lib/gherkin/rb_lexer.rb +0 -8
  21. data/lib/gherkin/rb_lexer/README.rdoc +0 -8
  22. data/lib/gherkin/rb_lexer/ar.rb +0 -1165
  23. data/lib/gherkin/rb_lexer/bg.rb +0 -1377
  24. data/lib/gherkin/rb_lexer/bm.rb +0 -1081
  25. data/lib/gherkin/rb_lexer/ca.rb +0 -1305
  26. data/lib/gherkin/rb_lexer/cs.rb +0 -1157
  27. data/lib/gherkin/rb_lexer/cy_gb.rb +0 -1027
  28. data/lib/gherkin/rb_lexer/da.rb +0 -1043
  29. data/lib/gherkin/rb_lexer/de.rb +0 -1151
  30. data/lib/gherkin/rb_lexer/en.rb +0 -1151
  31. data/lib/gherkin/rb_lexer/en_au.rb +0 -971
  32. data/lib/gherkin/rb_lexer/en_lol.rb +0 -929
  33. data/lib/gherkin/rb_lexer/en_pirate.rb +0 -1205
  34. data/lib/gherkin/rb_lexer/en_scouse.rb +0 -1357
  35. data/lib/gherkin/rb_lexer/en_tx.rb +0 -1011
  36. data/lib/gherkin/rb_lexer/eo.rb +0 -990
  37. data/lib/gherkin/rb_lexer/es.rb +0 -1135
  38. data/lib/gherkin/rb_lexer/et.rb +0 -985
  39. data/lib/gherkin/rb_lexer/fi.rb +0 -964
  40. data/lib/gherkin/rb_lexer/fr.rb +0 -1223
  41. data/lib/gherkin/rb_lexer/he.rb +0 -1113
  42. data/lib/gherkin/rb_lexer/hr.rb +0 -1061
  43. data/lib/gherkin/rb_lexer/hu.rb +0 -1113
  44. data/lib/gherkin/rb_lexer/id.rb +0 -958
  45. data/lib/gherkin/rb_lexer/is.rb +0 -1115
  46. data/lib/gherkin/rb_lexer/it.rb +0 -1081
  47. data/lib/gherkin/rb_lexer/ja.rb +0 -1413
  48. data/lib/gherkin/rb_lexer/ko.rb +0 -1097
  49. data/lib/gherkin/rb_lexer/lt.rb +0 -1040
  50. data/lib/gherkin/rb_lexer/lu.rb +0 -1127
  51. data/lib/gherkin/rb_lexer/lv.rb +0 -1161
  52. data/lib/gherkin/rb_lexer/nl.rb +0 -1110
  53. data/lib/gherkin/rb_lexer/no.rb +0 -1055
  54. data/lib/gherkin/rb_lexer/pl.rb +0 -1452
  55. data/lib/gherkin/rb_lexer/pt.rb +0 -1425
  56. data/lib/gherkin/rb_lexer/ro.rb +0 -1159
  57. data/lib/gherkin/rb_lexer/ru.rb +0 -1749
  58. data/lib/gherkin/rb_lexer/sk.rb +0 -1041
  59. data/lib/gherkin/rb_lexer/sr_cyrl.rb +0 -1798
  60. data/lib/gherkin/rb_lexer/sr_latn.rb +0 -1289
  61. data/lib/gherkin/rb_lexer/sv.rb +0 -1065
  62. data/lib/gherkin/rb_lexer/tr.rb +0 -1087
  63. data/lib/gherkin/rb_lexer/uk.rb +0 -1641
  64. data/lib/gherkin/rb_lexer/uz.rb +0 -1371
  65. data/lib/gherkin/rb_lexer/vi.rb +0 -1193
  66. data/lib/gherkin/rb_lexer/zh_cn.rb +0 -1053
  67. data/lib/gherkin/rb_lexer/zh_tw.rb +0 -1047
  68. data/spec/gherkin/js_lexer_spec.rb +0 -23
  69. data/spec/gherkin/rb_lexer_spec.rb +0 -20
@@ -1,1041 +0,0 @@
1
-
2
- # line 1 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
3
- require 'gherkin/lexer/i18n_lexer'
4
-
5
- module Gherkin
6
- module RbLexer
7
- class Sk #:nodoc:
8
-
9
- # line 123 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
10
-
11
-
12
- def initialize(listener)
13
- @listener = listener
14
-
15
- # line 16 "lib/gherkin/rb_lexer/sk.rb"
16
- class << self
17
- attr_accessor :_lexer_actions
18
- private :_lexer_actions, :_lexer_actions=
19
- end
20
- self._lexer_actions = [
21
- 0, 1, 0, 1, 1, 1, 2, 1,
22
- 3, 1, 4, 1, 5, 1, 6, 1,
23
- 7, 1, 8, 1, 9, 1, 10, 1,
24
- 11, 1, 12, 1, 13, 1, 16, 1,
25
- 17, 1, 18, 1, 19, 1, 20, 1,
26
- 21, 1, 22, 1, 23, 2, 2, 18,
27
- 2, 3, 4, 2, 13, 0, 2, 14,
28
- 15, 2, 17, 0, 2, 17, 1, 2,
29
- 17, 16, 2, 17, 19, 2, 18, 6,
30
- 2, 18, 7, 2, 18, 8, 2, 18,
31
- 9, 2, 18, 10, 2, 18, 16, 2,
32
- 20, 21, 2, 22, 0, 2, 22, 1,
33
- 2, 22, 16, 2, 22, 19, 3, 4,
34
- 14, 15, 3, 5, 14, 15, 3, 11,
35
- 14, 15, 3, 12, 14, 15, 3, 13,
36
- 14, 15, 3, 14, 15, 18, 3, 17,
37
- 0, 11, 3, 17, 14, 15, 4, 2,
38
- 14, 15, 18, 4, 3, 4, 14, 15,
39
- 4, 17, 0, 14, 15, 5, 17, 0,
40
- 11, 14, 15
41
- ]
42
-
43
- class << self
44
- attr_accessor :_lexer_key_offsets
45
- private :_lexer_key_offsets, :_lexer_key_offsets=
46
- end
47
- self._lexer_key_offsets = [
48
- 0, 0, 17, 18, 19, 35, 36, 37,
49
- 39, 41, 46, 51, 56, 61, 65, 69,
50
- 71, 72, 73, 74, 75, 76, 77, 78,
51
- 79, 80, 81, 82, 83, 84, 85, 86,
52
- 87, 89, 91, 96, 103, 108, 110, 111,
53
- 112, 113, 114, 115, 116, 117, 118, 119,
54
- 120, 121, 122, 123, 124, 125, 126, 127,
55
- 128, 129, 130, 131, 132, 145, 147, 149,
56
- 151, 153, 155, 157, 159, 161, 163, 165,
57
- 167, 169, 171, 173, 175, 191, 193, 196,
58
- 197, 198, 199, 200, 201, 202, 203, 204,
59
- 205, 206, 207, 217, 219, 221, 223, 225,
60
- 227, 229, 231, 233, 235, 237, 239, 241,
61
- 243, 245, 247, 249, 251, 253, 255, 257,
62
- 259, 261, 263, 265, 267, 269, 271, 273,
63
- 275, 277, 280, 283, 285, 287, 289, 291,
64
- 293, 295, 297, 299, 301, 303, 305, 307,
65
- 309, 311, 313, 315, 317, 319, 321, 323,
66
- 325, 327, 329, 331, 333, 334, 335, 336,
67
- 337, 338, 339, 340, 341, 342, 343, 344,
68
- 358, 360, 362, 364, 366, 368, 370, 372,
69
- 374, 376, 378, 380, 382, 384, 386, 388,
70
- 391, 393, 395, 397, 399, 401, 403, 405,
71
- 407, 409, 411, 413, 415, 417, 419, 421,
72
- 423, 425, 427, 429, 431, 433, 436, 438,
73
- 440, 442, 444, 446, 448, 450, 452, 454,
74
- 456, 458, 460, 462, 464, 466, 468, 470,
75
- 472, 474, 476, 477, 478, 479, 480, 481,
76
- 482, 483, 484, 485, 486, 493, 495, 497,
77
- 499, 501, 503, 505, 507, 509, 511, 513,
78
- 515, 516, 517, 518, 519, 520, 521, 522,
79
- 523, 524, 538, 540, 542, 544, 546, 548,
80
- 550, 552, 554, 556, 558, 560, 562, 564,
81
- 566, 568, 571, 573, 575, 577, 579, 581,
82
- 583, 585, 587, 589, 591, 593, 595, 597,
83
- 599, 601, 603, 605, 607, 609, 611, 613,
84
- 617, 619, 621, 623, 625, 627, 629, 631,
85
- 633, 635, 637, 639, 641, 643, 645, 647,
86
- 649, 651, 653, 655, 657, 659, 661, 663,
87
- 665, 666, 667, 671, 677, 680, 682, 688,
88
- 704, 707, 709, 711, 713, 715, 717, 720,
89
- 722, 724, 726, 728, 730, 732, 734, 736,
90
- 738, 740, 742, 744, 746, 748, 750, 752,
91
- 754, 756, 758, 760, 762
92
- ]
93
-
94
- class << self
95
- attr_accessor :_lexer_trans_keys
96
- private :_lexer_trans_keys, :_lexer_trans_keys=
97
- end
98
- self._lexer_trans_keys = [
99
- -17, 10, 32, 34, 35, 37, 42, 64,
100
- 65, 75, 78, 80, 83, 84, 124, 9,
101
- 13, -69, -65, 10, 32, 34, 35, 37,
102
- 42, 64, 65, 75, 78, 80, 83, 84,
103
- 124, 9, 13, 34, 34, 10, 13, 10,
104
- 13, 10, 32, 34, 9, 13, 10, 32,
105
- 34, 9, 13, 10, 32, 34, 9, 13,
106
- 10, 32, 34, 9, 13, 10, 32, 9,
107
- 13, 10, 32, 9, 13, 10, 13, 10,
108
- 95, 70, 69, 65, 84, 85, 82, 69,
109
- 95, 69, 78, 68, 95, 37, 32, 10,
110
- 13, 10, 13, 13, 32, 64, 9, 10,
111
- 9, 10, 13, 32, 64, 11, 12, 10,
112
- 32, 64, 9, 13, 32, 108, 101, 101,
113
- -60, -113, -61, -95, -60, -115, 114, 116,
114
- 32, 83, 99, 101, 110, -61, -95, 114,
115
- 117, 58, 10, 10, 10, 32, 35, 37,
116
- 42, 64, 65, 75, 80, 83, 84, 9,
117
- 13, 10, 95, 10, 70, 10, 69, 10,
118
- 65, 10, 84, 10, 85, 10, 82, 10,
119
- 69, 10, 95, 10, 69, 10, 78, 10,
120
- 68, 10, 95, 10, 37, 10, 32, 10,
121
- 32, 34, 35, 37, 42, 64, 65, 75,
122
- 78, 80, 83, 84, 124, 9, 13, 111,
123
- 114, -59, 107, 122, -66, 105, 97, 100,
124
- 97, 118, 107, 97, 58, 10, 10, 10,
125
- 32, 35, 37, 64, 78, 80, 83, 9,
126
- 13, 10, 95, 10, 70, 10, 69, 10,
127
- 65, 10, 84, 10, 85, 10, 82, 10,
128
- 69, 10, 95, 10, 69, 10, 78, 10,
129
- 68, 10, 95, 10, 37, -61, 10, -95,
130
- 10, -60, 10, -115, 10, 10, 114, 10,
131
- 116, 10, 32, 10, 83, 10, 99, 10,
132
- 101, 10, 110, -61, 10, -95, 10, 10,
133
- 114, 10, 117, 10, 58, 10, 111, 114,
134
- -59, 10, 122, -66, 10, 10, 105, 10,
135
- 97, 10, 100, 10, 97, 10, 118, 10,
136
- 107, 10, 97, 10, 97, 10, 100, 10,
137
- 105, 10, 101, -61, 10, -83, 10, 10,
138
- 107, 10, 108, 10, 97, 10, 100, 10,
139
- 121, 10, 99, 10, 101, 10, 110, -61,
140
- 10, -95, 10, 10, 114, 105, 97, -60,
141
- -66, 97, 100, 105, 101, 58, 10, 10,
142
- 10, 32, 35, 37, 42, 64, 65, 75,
143
- 78, 80, 83, 84, 9, 13, 10, 95,
144
- 10, 70, 10, 69, 10, 65, 10, 84,
145
- 10, 85, 10, 82, 10, 69, 10, 95,
146
- 10, 69, 10, 78, 10, 68, 10, 95,
147
- 10, 37, 10, 32, 10, 32, 108, 10,
148
- 101, 10, 101, -60, 10, -113, 10, -61,
149
- 10, -95, 10, -60, 10, -115, 10, 10,
150
- 114, 10, 116, 10, 32, 10, 83, 10,
151
- 99, 10, 101, 10, 110, -61, 10, -95,
152
- 10, 10, 114, 10, 117, 10, 58, 10,
153
- 111, -59, 10, 107, -66, 10, 10, 105,
154
- 10, 97, 10, 100, 10, 97, 10, 118,
155
- 10, 107, 10, 97, 10, 105, 10, 97,
156
- -60, 10, -66, 10, 10, 99, 10, 101,
157
- 10, 110, -61, 10, -95, 10, 10, 114,
158
- 10, 97, 10, 107, -61, -83, 107, 108,
159
- 97, 100, 121, 58, 10, 10, 10, 32,
160
- 35, 80, 124, 9, 13, 10, 111, -59,
161
- 10, -66, 10, 10, 105, 10, 97, 10,
162
- 100, 10, 97, 10, 118, 10, 107, 10,
163
- 97, 10, 58, 99, 101, 110, -61, -95,
164
- 114, 58, 10, 10, 10, 32, 35, 37,
165
- 42, 64, 65, 75, 78, 80, 83, 84,
166
- 9, 13, 10, 95, 10, 70, 10, 69,
167
- 10, 65, 10, 84, 10, 85, 10, 82,
168
- 10, 69, 10, 95, 10, 69, 10, 78,
169
- 10, 68, 10, 95, 10, 37, 10, 32,
170
- 10, 32, 108, 10, 101, 10, 101, -60,
171
- 10, -113, 10, -61, 10, -95, 10, -60,
172
- 10, -115, 10, 10, 114, 10, 116, 10,
173
- 32, 10, 83, 10, 99, 10, 101, 10,
174
- 110, -61, 10, -95, 10, 10, 114, 10,
175
- 117, 10, 58, 10, 111, -59, 10, 107,
176
- 122, -66, 10, 10, 105, 10, 97, 10,
177
- 100, 10, 97, 10, 118, 10, 107, 10,
178
- 97, 10, 105, 10, 97, -60, 10, -66,
179
- 10, 10, 97, 10, 100, 10, 105, 10,
180
- 101, 10, 99, 10, 101, 10, 110, -61,
181
- 10, -95, 10, 10, 114, 10, 97, 10,
182
- 107, 97, 107, 32, 124, 9, 13, 10,
183
- 32, 92, 124, 9, 13, 10, 92, 124,
184
- 10, 92, 10, 32, 92, 124, 9, 13,
185
- 10, 32, 34, 35, 37, 42, 64, 65,
186
- 75, 78, 80, 83, 84, 124, 9, 13,
187
- 10, 32, 108, 10, 101, 10, 101, -60,
188
- 10, -113, 10, 10, 111, -59, 10, 107,
189
- -66, 10, 10, 105, 10, 97, 10, 100,
190
- 10, 97, 10, 118, 10, 107, 10, 97,
191
- 10, 58, 10, 105, 10, 97, -60, 10,
192
- -66, 10, 10, 99, 10, 101, 10, 110,
193
- -61, 10, -95, 10, 10, 114, 10, 97,
194
- 10, 107, 0
195
- ]
196
-
197
- class << self
198
- attr_accessor :_lexer_single_lengths
199
- private :_lexer_single_lengths, :_lexer_single_lengths=
200
- end
201
- self._lexer_single_lengths = [
202
- 0, 15, 1, 1, 14, 1, 1, 2,
203
- 2, 3, 3, 3, 3, 2, 2, 2,
204
- 1, 1, 1, 1, 1, 1, 1, 1,
205
- 1, 1, 1, 1, 1, 1, 1, 1,
206
- 2, 2, 3, 5, 3, 2, 1, 1,
207
- 1, 1, 1, 1, 1, 1, 1, 1,
208
- 1, 1, 1, 1, 1, 1, 1, 1,
209
- 1, 1, 1, 1, 11, 2, 2, 2,
210
- 2, 2, 2, 2, 2, 2, 2, 2,
211
- 2, 2, 2, 2, 14, 2, 3, 1,
212
- 1, 1, 1, 1, 1, 1, 1, 1,
213
- 1, 1, 8, 2, 2, 2, 2, 2,
214
- 2, 2, 2, 2, 2, 2, 2, 2,
215
- 2, 2, 2, 2, 2, 2, 2, 2,
216
- 2, 2, 2, 2, 2, 2, 2, 2,
217
- 2, 3, 3, 2, 2, 2, 2, 2,
218
- 2, 2, 2, 2, 2, 2, 2, 2,
219
- 2, 2, 2, 2, 2, 2, 2, 2,
220
- 2, 2, 2, 2, 1, 1, 1, 1,
221
- 1, 1, 1, 1, 1, 1, 1, 12,
222
- 2, 2, 2, 2, 2, 2, 2, 2,
223
- 2, 2, 2, 2, 2, 2, 2, 3,
224
- 2, 2, 2, 2, 2, 2, 2, 2,
225
- 2, 2, 2, 2, 2, 2, 2, 2,
226
- 2, 2, 2, 2, 2, 3, 2, 2,
227
- 2, 2, 2, 2, 2, 2, 2, 2,
228
- 2, 2, 2, 2, 2, 2, 2, 2,
229
- 2, 2, 1, 1, 1, 1, 1, 1,
230
- 1, 1, 1, 1, 5, 2, 2, 2,
231
- 2, 2, 2, 2, 2, 2, 2, 2,
232
- 1, 1, 1, 1, 1, 1, 1, 1,
233
- 1, 12, 2, 2, 2, 2, 2, 2,
234
- 2, 2, 2, 2, 2, 2, 2, 2,
235
- 2, 3, 2, 2, 2, 2, 2, 2,
236
- 2, 2, 2, 2, 2, 2, 2, 2,
237
- 2, 2, 2, 2, 2, 2, 2, 4,
238
- 2, 2, 2, 2, 2, 2, 2, 2,
239
- 2, 2, 2, 2, 2, 2, 2, 2,
240
- 2, 2, 2, 2, 2, 2, 2, 2,
241
- 1, 1, 2, 4, 3, 2, 4, 14,
242
- 3, 2, 2, 2, 2, 2, 3, 2,
243
- 2, 2, 2, 2, 2, 2, 2, 2,
244
- 2, 2, 2, 2, 2, 2, 2, 2,
245
- 2, 2, 2, 2, 0
246
- ]
247
-
248
- class << self
249
- attr_accessor :_lexer_range_lengths
250
- private :_lexer_range_lengths, :_lexer_range_lengths=
251
- end
252
- self._lexer_range_lengths = [
253
- 0, 1, 0, 0, 1, 0, 0, 0,
254
- 0, 1, 1, 1, 1, 1, 1, 0,
255
- 0, 0, 0, 0, 0, 0, 0, 0,
256
- 0, 0, 0, 0, 0, 0, 0, 0,
257
- 0, 0, 1, 1, 1, 0, 0, 0,
258
- 0, 0, 0, 0, 0, 0, 0, 0,
259
- 0, 0, 0, 0, 0, 0, 0, 0,
260
- 0, 0, 0, 0, 1, 0, 0, 0,
261
- 0, 0, 0, 0, 0, 0, 0, 0,
262
- 0, 0, 0, 0, 1, 0, 0, 0,
263
- 0, 0, 0, 0, 0, 0, 0, 0,
264
- 0, 0, 1, 0, 0, 0, 0, 0,
265
- 0, 0, 0, 0, 0, 0, 0, 0,
266
- 0, 0, 0, 0, 0, 0, 0, 0,
267
- 0, 0, 0, 0, 0, 0, 0, 0,
268
- 0, 0, 0, 0, 0, 0, 0, 0,
269
- 0, 0, 0, 0, 0, 0, 0, 0,
270
- 0, 0, 0, 0, 0, 0, 0, 0,
271
- 0, 0, 0, 0, 0, 0, 0, 0,
272
- 0, 0, 0, 0, 0, 0, 0, 1,
273
- 0, 0, 0, 0, 0, 0, 0, 0,
274
- 0, 0, 0, 0, 0, 0, 0, 0,
275
- 0, 0, 0, 0, 0, 0, 0, 0,
276
- 0, 0, 0, 0, 0, 0, 0, 0,
277
- 0, 0, 0, 0, 0, 0, 0, 0,
278
- 0, 0, 0, 0, 0, 0, 0, 0,
279
- 0, 0, 0, 0, 0, 0, 0, 0,
280
- 0, 0, 0, 0, 0, 0, 0, 0,
281
- 0, 0, 0, 0, 1, 0, 0, 0,
282
- 0, 0, 0, 0, 0, 0, 0, 0,
283
- 0, 0, 0, 0, 0, 0, 0, 0,
284
- 0, 1, 0, 0, 0, 0, 0, 0,
285
- 0, 0, 0, 0, 0, 0, 0, 0,
286
- 0, 0, 0, 0, 0, 0, 0, 0,
287
- 0, 0, 0, 0, 0, 0, 0, 0,
288
- 0, 0, 0, 0, 0, 0, 0, 0,
289
- 0, 0, 0, 0, 0, 0, 0, 0,
290
- 0, 0, 0, 0, 0, 0, 0, 0,
291
- 0, 0, 0, 0, 0, 0, 0, 0,
292
- 0, 0, 1, 1, 0, 0, 1, 1,
293
- 0, 0, 0, 0, 0, 0, 0, 0,
294
- 0, 0, 0, 0, 0, 0, 0, 0,
295
- 0, 0, 0, 0, 0, 0, 0, 0,
296
- 0, 0, 0, 0, 0
297
- ]
298
-
299
- class << self
300
- attr_accessor :_lexer_index_offsets
301
- private :_lexer_index_offsets, :_lexer_index_offsets=
302
- end
303
- self._lexer_index_offsets = [
304
- 0, 0, 17, 19, 21, 37, 39, 41,
305
- 44, 47, 52, 57, 62, 67, 71, 75,
306
- 78, 80, 82, 84, 86, 88, 90, 92,
307
- 94, 96, 98, 100, 102, 104, 106, 108,
308
- 110, 113, 116, 121, 128, 133, 136, 138,
309
- 140, 142, 144, 146, 148, 150, 152, 154,
310
- 156, 158, 160, 162, 164, 166, 168, 170,
311
- 172, 174, 176, 178, 180, 193, 196, 199,
312
- 202, 205, 208, 211, 214, 217, 220, 223,
313
- 226, 229, 232, 235, 238, 254, 257, 261,
314
- 263, 265, 267, 269, 271, 273, 275, 277,
315
- 279, 281, 283, 293, 296, 299, 302, 305,
316
- 308, 311, 314, 317, 320, 323, 326, 329,
317
- 332, 335, 338, 341, 344, 347, 350, 353,
318
- 356, 359, 362, 365, 368, 371, 374, 377,
319
- 380, 383, 387, 391, 394, 397, 400, 403,
320
- 406, 409, 412, 415, 418, 421, 424, 427,
321
- 430, 433, 436, 439, 442, 445, 448, 451,
322
- 454, 457, 460, 463, 466, 468, 470, 472,
323
- 474, 476, 478, 480, 482, 484, 486, 488,
324
- 502, 505, 508, 511, 514, 517, 520, 523,
325
- 526, 529, 532, 535, 538, 541, 544, 547,
326
- 551, 554, 557, 560, 563, 566, 569, 572,
327
- 575, 578, 581, 584, 587, 590, 593, 596,
328
- 599, 602, 605, 608, 611, 614, 618, 621,
329
- 624, 627, 630, 633, 636, 639, 642, 645,
330
- 648, 651, 654, 657, 660, 663, 666, 669,
331
- 672, 675, 678, 680, 682, 684, 686, 688,
332
- 690, 692, 694, 696, 698, 705, 708, 711,
333
- 714, 717, 720, 723, 726, 729, 732, 735,
334
- 738, 740, 742, 744, 746, 748, 750, 752,
335
- 754, 756, 770, 773, 776, 779, 782, 785,
336
- 788, 791, 794, 797, 800, 803, 806, 809,
337
- 812, 815, 819, 822, 825, 828, 831, 834,
338
- 837, 840, 843, 846, 849, 852, 855, 858,
339
- 861, 864, 867, 870, 873, 876, 879, 882,
340
- 887, 890, 893, 896, 899, 902, 905, 908,
341
- 911, 914, 917, 920, 923, 926, 929, 932,
342
- 935, 938, 941, 944, 947, 950, 953, 956,
343
- 959, 961, 963, 967, 973, 977, 980, 986,
344
- 1002, 1006, 1009, 1012, 1015, 1018, 1021, 1025,
345
- 1028, 1031, 1034, 1037, 1040, 1043, 1046, 1049,
346
- 1052, 1055, 1058, 1061, 1064, 1067, 1070, 1073,
347
- 1076, 1079, 1082, 1085, 1088
348
- ]
349
-
350
- class << self
351
- attr_accessor :_lexer_indicies
352
- private :_lexer_indicies, :_lexer_indicies=
353
- end
354
- self._lexer_indicies = [
355
- 1, 3, 2, 4, 5, 6, 7, 8,
356
- 9, 10, 11, 12, 13, 14, 15, 2,
357
- 0, 16, 0, 2, 0, 3, 2, 4,
358
- 5, 6, 7, 8, 9, 10, 11, 12,
359
- 13, 14, 15, 2, 0, 17, 0, 18,
360
- 0, 20, 21, 19, 23, 24, 22, 27,
361
- 26, 28, 26, 25, 31, 30, 32, 30,
362
- 29, 31, 30, 33, 30, 29, 31, 30,
363
- 34, 30, 29, 36, 35, 35, 0, 3,
364
- 37, 37, 0, 39, 40, 38, 3, 0,
365
- 41, 0, 42, 0, 43, 0, 44, 0,
366
- 45, 0, 46, 0, 47, 0, 48, 0,
367
- 49, 0, 50, 0, 51, 0, 52, 0,
368
- 53, 0, 54, 0, 55, 0, 57, 58,
369
- 56, 60, 61, 59, 0, 0, 0, 0,
370
- 62, 63, 64, 63, 63, 66, 65, 62,
371
- 3, 67, 8, 67, 0, 55, 68, 0,
372
- 69, 0, 70, 0, 71, 0, 69, 0,
373
- 72, 0, 73, 0, 74, 0, 75, 0,
374
- 76, 0, 77, 0, 78, 0, 79, 0,
375
- 80, 0, 81, 0, 82, 0, 83, 0,
376
- 84, 0, 85, 0, 86, 0, 87, 0,
377
- 89, 88, 91, 90, 91, 92, 93, 94,
378
- 95, 93, 96, 97, 98, 99, 100, 92,
379
- 90, 91, 101, 90, 91, 102, 90, 91,
380
- 103, 90, 91, 104, 90, 91, 105, 90,
381
- 91, 106, 90, 91, 107, 90, 91, 108,
382
- 90, 91, 109, 90, 91, 110, 90, 91,
383
- 111, 90, 91, 112, 90, 91, 113, 90,
384
- 91, 114, 90, 91, 115, 90, 117, 116,
385
- 118, 119, 120, 121, 122, 123, 124, 125,
386
- 126, 127, 128, 129, 116, 0, 130, 131,
387
- 0, 132, 133, 134, 0, 135, 0, 136,
388
- 0, 137, 0, 138, 0, 139, 0, 140,
389
- 0, 141, 0, 142, 0, 143, 0, 145,
390
- 144, 147, 146, 147, 148, 149, 150, 149,
391
- 151, 152, 153, 148, 146, 147, 154, 146,
392
- 147, 155, 146, 147, 156, 146, 147, 157,
393
- 146, 147, 158, 146, 147, 159, 146, 147,
394
- 160, 146, 147, 161, 146, 147, 162, 146,
395
- 147, 163, 146, 147, 164, 146, 147, 165,
396
- 146, 147, 166, 146, 147, 167, 146, 168,
397
- 147, 146, 169, 147, 146, 170, 147, 146,
398
- 171, 147, 146, 147, 172, 146, 147, 173,
399
- 146, 147, 174, 146, 147, 175, 146, 147,
400
- 176, 146, 147, 177, 146, 147, 178, 146,
401
- 179, 147, 146, 180, 147, 146, 147, 181,
402
- 146, 147, 182, 146, 147, 183, 146, 147,
403
- 184, 185, 146, 186, 147, 187, 146, 188,
404
- 147, 146, 147, 189, 146, 147, 190, 146,
405
- 147, 191, 146, 147, 192, 146, 147, 193,
406
- 146, 147, 194, 146, 147, 182, 146, 147,
407
- 195, 146, 147, 196, 146, 147, 197, 146,
408
- 147, 182, 146, 198, 147, 146, 199, 147,
409
- 146, 147, 200, 146, 147, 201, 146, 147,
410
- 202, 146, 147, 203, 146, 147, 182, 146,
411
- 147, 204, 146, 147, 205, 146, 147, 206,
412
- 146, 207, 147, 146, 208, 147, 146, 147,
413
- 182, 146, 209, 0, 210, 0, 211, 0,
414
- 69, 0, 212, 0, 213, 0, 214, 0,
415
- 215, 0, 216, 0, 218, 217, 220, 219,
416
- 220, 221, 222, 223, 224, 222, 225, 226,
417
- 227, 228, 229, 230, 221, 219, 220, 231,
418
- 219, 220, 232, 219, 220, 233, 219, 220,
419
- 234, 219, 220, 235, 219, 220, 236, 219,
420
- 220, 237, 219, 220, 238, 219, 220, 239,
421
- 219, 220, 240, 219, 220, 241, 219, 220,
422
- 242, 219, 220, 243, 219, 220, 244, 219,
423
- 220, 245, 219, 220, 245, 246, 219, 220,
424
- 247, 219, 220, 248, 219, 249, 220, 219,
425
- 247, 220, 219, 250, 220, 219, 251, 220,
426
- 219, 252, 220, 219, 253, 220, 219, 220,
427
- 254, 219, 220, 255, 219, 220, 256, 219,
428
- 220, 257, 219, 220, 258, 219, 220, 259,
429
- 219, 220, 260, 219, 261, 220, 219, 262,
430
- 220, 219, 220, 263, 219, 220, 264, 219,
431
- 220, 245, 219, 220, 265, 219, 266, 220,
432
- 267, 219, 268, 220, 219, 220, 269, 219,
433
- 220, 270, 219, 220, 271, 219, 220, 272,
434
- 219, 220, 273, 219, 220, 274, 219, 220,
435
- 264, 219, 220, 275, 219, 220, 276, 219,
436
- 277, 220, 219, 247, 220, 219, 220, 278,
437
- 219, 220, 279, 219, 220, 280, 219, 281,
438
- 220, 219, 282, 220, 219, 220, 264, 219,
439
- 220, 283, 219, 220, 247, 219, 284, 0,
440
- 285, 0, 286, 0, 287, 0, 288, 0,
441
- 289, 0, 290, 0, 291, 0, 293, 292,
442
- 295, 294, 295, 296, 297, 298, 297, 296,
443
- 294, 295, 299, 294, 300, 295, 294, 301,
444
- 295, 294, 295, 302, 294, 295, 303, 294,
445
- 295, 304, 294, 295, 305, 294, 295, 306,
446
- 294, 295, 307, 294, 295, 308, 294, 295,
447
- 309, 294, 310, 0, 311, 0, 312, 0,
448
- 313, 0, 314, 0, 315, 0, 316, 0,
449
- 318, 317, 320, 319, 320, 321, 322, 323,
450
- 324, 322, 325, 326, 327, 328, 329, 330,
451
- 321, 319, 320, 331, 319, 320, 332, 319,
452
- 320, 333, 319, 320, 334, 319, 320, 335,
453
- 319, 320, 336, 319, 320, 337, 319, 320,
454
- 338, 319, 320, 339, 319, 320, 340, 319,
455
- 320, 341, 319, 320, 342, 319, 320, 343,
456
- 319, 320, 344, 319, 320, 345, 319, 320,
457
- 345, 346, 319, 320, 347, 319, 320, 348,
458
- 319, 349, 320, 319, 347, 320, 319, 350,
459
- 320, 319, 351, 320, 319, 352, 320, 319,
460
- 353, 320, 319, 320, 354, 319, 320, 355,
461
- 319, 320, 356, 319, 320, 357, 319, 320,
462
- 358, 319, 320, 359, 319, 320, 360, 319,
463
- 361, 320, 319, 362, 320, 319, 320, 363,
464
- 319, 320, 364, 319, 320, 345, 319, 320,
465
- 365, 319, 366, 320, 367, 368, 319, 369,
466
- 320, 319, 320, 370, 319, 320, 371, 319,
467
- 320, 372, 319, 320, 373, 319, 320, 374,
468
- 319, 320, 375, 319, 320, 364, 319, 320,
469
- 376, 319, 320, 377, 319, 378, 320, 319,
470
- 347, 320, 319, 320, 379, 319, 320, 380,
471
- 319, 320, 381, 319, 320, 364, 319, 320,
472
- 382, 319, 320, 383, 319, 320, 384, 319,
473
- 385, 320, 319, 386, 320, 319, 320, 364,
474
- 319, 320, 387, 319, 320, 347, 319, 388,
475
- 0, 69, 0, 389, 390, 389, 0, 393,
476
- 392, 394, 395, 392, 391, 0, 397, 398,
477
- 396, 0, 397, 396, 393, 399, 397, 398,
478
- 399, 396, 393, 400, 401, 402, 403, 404,
479
- 405, 406, 407, 408, 409, 410, 411, 412,
480
- 400, 0, 91, 115, 413, 90, 91, 414,
481
- 90, 91, 415, 90, 416, 91, 90, 414,
482
- 91, 90, 91, 417, 90, 418, 91, 419,
483
- 90, 420, 91, 90, 91, 421, 90, 91,
484
- 422, 90, 91, 423, 90, 91, 424, 90,
485
- 91, 425, 90, 91, 426, 90, 91, 427,
486
- 90, 91, 115, 90, 91, 428, 90, 91,
487
- 429, 90, 430, 91, 90, 414, 91, 90,
488
- 91, 431, 90, 91, 432, 90, 91, 433,
489
- 90, 434, 91, 90, 435, 91, 90, 91,
490
- 427, 90, 91, 436, 90, 91, 414, 90,
491
- 437, 0
492
- ]
493
-
494
- class << self
495
- attr_accessor :_lexer_trans_targs
496
- private :_lexer_trans_targs, :_lexer_trans_targs=
497
- end
498
- self._lexer_trans_targs = [
499
- 0, 2, 4, 4, 5, 15, 17, 31,
500
- 34, 37, 39, 42, 77, 240, 312, 314,
501
- 3, 6, 7, 8, 9, 8, 8, 9,
502
- 8, 10, 10, 10, 11, 10, 10, 10,
503
- 11, 12, 13, 14, 4, 14, 15, 4,
504
- 16, 18, 19, 20, 21, 22, 23, 24,
505
- 25, 26, 27, 28, 29, 30, 348, 32,
506
- 33, 4, 16, 33, 4, 16, 35, 36,
507
- 4, 35, 34, 36, 38, 31, 40, 41,
508
- 43, 44, 45, 46, 47, 48, 49, 50,
509
- 51, 52, 53, 54, 55, 56, 57, 58,
510
- 59, 60, 59, 60, 60, 4, 61, 75,
511
- 320, 322, 325, 340, 346, 62, 63, 64,
512
- 65, 66, 67, 68, 69, 70, 71, 72,
513
- 73, 74, 4, 76, 4, 4, 5, 15,
514
- 17, 31, 34, 37, 39, 42, 77, 240,
515
- 312, 314, 78, 218, 79, 148, 152, 80,
516
- 81, 82, 83, 84, 85, 86, 87, 88,
517
- 89, 90, 89, 90, 90, 4, 91, 105,
518
- 121, 142, 92, 93, 94, 95, 96, 97,
519
- 98, 99, 100, 101, 102, 103, 104, 4,
520
- 106, 107, 108, 109, 110, 111, 112, 113,
521
- 114, 115, 116, 117, 118, 119, 120, 76,
522
- 122, 135, 123, 131, 124, 125, 126, 127,
523
- 128, 129, 130, 132, 133, 134, 136, 137,
524
- 138, 139, 140, 141, 143, 144, 145, 146,
525
- 147, 149, 150, 151, 153, 154, 155, 156,
526
- 157, 158, 159, 158, 159, 159, 4, 160,
527
- 174, 175, 177, 180, 196, 210, 216, 161,
528
- 162, 163, 164, 165, 166, 167, 168, 169,
529
- 170, 171, 172, 173, 4, 76, 176, 174,
530
- 178, 179, 181, 182, 183, 184, 185, 186,
531
- 187, 188, 189, 190, 191, 192, 193, 194,
532
- 195, 197, 198, 206, 199, 200, 201, 202,
533
- 203, 204, 205, 207, 208, 209, 211, 212,
534
- 213, 214, 215, 217, 219, 220, 221, 222,
535
- 223, 224, 225, 226, 227, 228, 227, 228,
536
- 228, 4, 229, 230, 231, 232, 233, 234,
537
- 235, 236, 237, 238, 239, 76, 241, 242,
538
- 243, 244, 245, 246, 247, 248, 249, 248,
539
- 249, 249, 4, 250, 264, 265, 267, 270,
540
- 286, 304, 310, 251, 252, 253, 254, 255,
541
- 256, 257, 258, 259, 260, 261, 262, 263,
542
- 4, 76, 266, 264, 268, 269, 271, 272,
543
- 273, 274, 275, 276, 277, 278, 279, 280,
544
- 281, 282, 283, 284, 285, 287, 288, 296,
545
- 300, 289, 290, 291, 292, 293, 294, 295,
546
- 297, 298, 299, 301, 302, 303, 305, 306,
547
- 307, 308, 309, 311, 313, 314, 315, 316,
548
- 318, 319, 317, 315, 316, 317, 315, 318,
549
- 319, 5, 15, 17, 31, 34, 37, 39,
550
- 42, 77, 240, 312, 314, 321, 75, 323,
551
- 324, 326, 327, 336, 328, 329, 330, 331,
552
- 332, 333, 334, 335, 337, 338, 339, 341,
553
- 342, 343, 344, 345, 347, 0
554
- ]
555
-
556
- class << self
557
- attr_accessor :_lexer_trans_actions
558
- private :_lexer_trans_actions, :_lexer_trans_actions=
559
- end
560
- self._lexer_trans_actions = [
561
- 43, 0, 0, 54, 3, 1, 0, 29,
562
- 1, 29, 29, 29, 29, 29, 29, 35,
563
- 0, 0, 0, 7, 139, 48, 0, 102,
564
- 9, 5, 45, 134, 45, 0, 33, 122,
565
- 33, 33, 0, 11, 106, 0, 0, 114,
566
- 25, 0, 0, 0, 0, 0, 0, 0,
567
- 0, 0, 0, 0, 0, 0, 0, 0,
568
- 57, 149, 126, 0, 110, 23, 0, 27,
569
- 118, 27, 51, 0, 0, 0, 0, 0,
570
- 0, 0, 0, 0, 0, 0, 0, 0,
571
- 0, 0, 0, 0, 0, 0, 0, 0,
572
- 57, 144, 0, 54, 0, 78, 33, 84,
573
- 84, 84, 84, 84, 84, 0, 0, 0,
574
- 0, 0, 0, 0, 0, 0, 0, 0,
575
- 0, 0, 19, 19, 31, 130, 60, 57,
576
- 31, 63, 57, 63, 63, 63, 63, 63,
577
- 63, 66, 0, 0, 0, 0, 0, 0,
578
- 0, 0, 0, 0, 0, 0, 0, 0,
579
- 57, 144, 0, 54, 0, 69, 33, 84,
580
- 84, 84, 0, 0, 0, 0, 0, 0,
581
- 0, 0, 0, 0, 0, 0, 0, 13,
582
- 0, 0, 0, 0, 0, 0, 0, 0,
583
- 0, 0, 0, 0, 0, 0, 0, 13,
584
- 0, 0, 0, 0, 0, 0, 0, 0,
585
- 0, 0, 0, 0, 0, 0, 0, 0,
586
- 0, 0, 0, 0, 0, 0, 0, 0,
587
- 0, 0, 0, 0, 0, 0, 0, 0,
588
- 0, 57, 144, 0, 54, 0, 72, 33,
589
- 84, 84, 84, 84, 84, 84, 84, 0,
590
- 0, 0, 0, 0, 0, 0, 0, 0,
591
- 0, 0, 0, 0, 15, 15, 0, 0,
592
- 0, 0, 0, 0, 0, 0, 0, 0,
593
- 0, 0, 0, 0, 0, 0, 0, 0,
594
- 0, 0, 0, 0, 0, 0, 0, 0,
595
- 0, 0, 0, 0, 0, 0, 0, 0,
596
- 0, 0, 0, 0, 0, 0, 0, 0,
597
- 0, 0, 0, 0, 57, 144, 0, 54,
598
- 0, 81, 84, 0, 0, 0, 0, 0,
599
- 0, 0, 0, 0, 0, 21, 0, 0,
600
- 0, 0, 0, 0, 0, 57, 144, 0,
601
- 54, 0, 75, 33, 84, 84, 84, 84,
602
- 84, 84, 84, 0, 0, 0, 0, 0,
603
- 0, 0, 0, 0, 0, 0, 0, 0,
604
- 17, 17, 0, 0, 0, 0, 0, 0,
605
- 0, 0, 0, 0, 0, 0, 0, 0,
606
- 0, 0, 0, 0, 0, 0, 0, 0,
607
- 0, 0, 0, 0, 0, 0, 0, 0,
608
- 0, 0, 0, 0, 0, 0, 0, 0,
609
- 0, 0, 0, 0, 0, 0, 0, 37,
610
- 37, 54, 37, 87, 0, 0, 39, 0,
611
- 0, 93, 90, 41, 96, 90, 96, 96,
612
- 96, 96, 96, 96, 99, 0, 0, 0,
613
- 0, 0, 0, 0, 0, 0, 0, 0,
614
- 0, 0, 0, 0, 0, 0, 0, 0,
615
- 0, 0, 0, 0, 0, 0
616
- ]
617
-
618
- class << self
619
- attr_accessor :_lexer_eof_actions
620
- private :_lexer_eof_actions, :_lexer_eof_actions=
621
- end
622
- self._lexer_eof_actions = [
623
- 0, 43, 43, 43, 43, 43, 43, 43,
624
- 43, 43, 43, 43, 43, 43, 43, 43,
625
- 43, 43, 43, 43, 43, 43, 43, 43,
626
- 43, 43, 43, 43, 43, 43, 43, 43,
627
- 43, 43, 43, 43, 43, 43, 43, 43,
628
- 43, 43, 43, 43, 43, 43, 43, 43,
629
- 43, 43, 43, 43, 43, 43, 43, 43,
630
- 43, 43, 43, 43, 43, 43, 43, 43,
631
- 43, 43, 43, 43, 43, 43, 43, 43,
632
- 43, 43, 43, 43, 43, 43, 43, 43,
633
- 43, 43, 43, 43, 43, 43, 43, 43,
634
- 43, 43, 43, 43, 43, 43, 43, 43,
635
- 43, 43, 43, 43, 43, 43, 43, 43,
636
- 43, 43, 43, 43, 43, 43, 43, 43,
637
- 43, 43, 43, 43, 43, 43, 43, 43,
638
- 43, 43, 43, 43, 43, 43, 43, 43,
639
- 43, 43, 43, 43, 43, 43, 43, 43,
640
- 43, 43, 43, 43, 43, 43, 43, 43,
641
- 43, 43, 43, 43, 43, 43, 43, 43,
642
- 43, 43, 43, 43, 43, 43, 43, 43,
643
- 43, 43, 43, 43, 43, 43, 43, 43,
644
- 43, 43, 43, 43, 43, 43, 43, 43,
645
- 43, 43, 43, 43, 43, 43, 43, 43,
646
- 43, 43, 43, 43, 43, 43, 43, 43,
647
- 43, 43, 43, 43, 43, 43, 43, 43,
648
- 43, 43, 43, 43, 43, 43, 43, 43,
649
- 43, 43, 43, 43, 43, 43, 43, 43,
650
- 43, 43, 43, 43, 43, 43, 43, 43,
651
- 43, 43, 43, 43, 43, 43, 43, 43,
652
- 43, 43, 43, 43, 43, 43, 43, 43,
653
- 43, 43, 43, 43, 43, 43, 43, 43,
654
- 43, 43, 43, 43, 43, 43, 43, 43,
655
- 43, 43, 43, 43, 43, 43, 43, 43,
656
- 43, 43, 43, 43, 43, 43, 43, 43,
657
- 43, 43, 43, 43, 43, 43, 43, 43,
658
- 43, 43, 43, 43, 43, 43, 43, 43,
659
- 43, 43, 43, 43, 43, 43, 43, 43,
660
- 43, 43, 43, 43, 43, 43, 43, 43,
661
- 43, 43, 43, 43, 43, 43, 43, 43,
662
- 43, 43, 43, 43, 43, 43, 43, 43,
663
- 43, 43, 43, 43, 43, 43, 43, 43,
664
- 43, 43, 43, 43, 43, 43, 43, 43,
665
- 43, 43, 43, 43, 43, 43, 43, 43,
666
- 43, 43, 43, 43, 43
667
- ]
668
-
669
- class << self
670
- attr_accessor :lexer_start
671
- end
672
- self.lexer_start = 1;
673
- class << self
674
- attr_accessor :lexer_first_final
675
- end
676
- self.lexer_first_final = 348;
677
- class << self
678
- attr_accessor :lexer_error
679
- end
680
- self.lexer_error = 0;
681
-
682
- class << self
683
- attr_accessor :lexer_en_main
684
- end
685
- self.lexer_en_main = 1;
686
-
687
-
688
- # line 128 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
689
- end
690
-
691
- def scan(data)
692
- data = (data + "\n%_FEATURE_END_%").unpack("c*") # Explicit EOF simplifies things considerably
693
- eof = pe = data.length
694
-
695
- @line_number = 1
696
- @last_newline = 0
697
-
698
-
699
- # line 700 "lib/gherkin/rb_lexer/sk.rb"
700
- begin
701
- p ||= 0
702
- pe ||= data.length
703
- cs = lexer_start
704
- end
705
-
706
- # line 138 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
707
-
708
- # line 709 "lib/gherkin/rb_lexer/sk.rb"
709
- begin
710
- _klen, _trans, _keys, _acts, _nacts = nil
711
- _goto_level = 0
712
- _resume = 10
713
- _eof_trans = 15
714
- _again = 20
715
- _test_eof = 30
716
- _out = 40
717
- while true
718
- _trigger_goto = false
719
- if _goto_level <= 0
720
- if p == pe
721
- _goto_level = _test_eof
722
- next
723
- end
724
- if cs == 0
725
- _goto_level = _out
726
- next
727
- end
728
- end
729
- if _goto_level <= _resume
730
- _keys = _lexer_key_offsets[cs]
731
- _trans = _lexer_index_offsets[cs]
732
- _klen = _lexer_single_lengths[cs]
733
- _break_match = false
734
-
735
- begin
736
- if _klen > 0
737
- _lower = _keys
738
- _upper = _keys + _klen - 1
739
-
740
- loop do
741
- break if _upper < _lower
742
- _mid = _lower + ( (_upper - _lower) >> 1 )
743
-
744
- if data[p] < _lexer_trans_keys[_mid]
745
- _upper = _mid - 1
746
- elsif data[p] > _lexer_trans_keys[_mid]
747
- _lower = _mid + 1
748
- else
749
- _trans += (_mid - _keys)
750
- _break_match = true
751
- break
752
- end
753
- end # loop
754
- break if _break_match
755
- _keys += _klen
756
- _trans += _klen
757
- end
758
- _klen = _lexer_range_lengths[cs]
759
- if _klen > 0
760
- _lower = _keys
761
- _upper = _keys + (_klen << 1) - 2
762
- loop do
763
- break if _upper < _lower
764
- _mid = _lower + (((_upper-_lower) >> 1) & ~1)
765
- if data[p] < _lexer_trans_keys[_mid]
766
- _upper = _mid - 2
767
- elsif data[p] > _lexer_trans_keys[_mid+1]
768
- _lower = _mid + 2
769
- else
770
- _trans += ((_mid - _keys) >> 1)
771
- _break_match = true
772
- break
773
- end
774
- end # loop
775
- break if _break_match
776
- _trans += _klen
777
- end
778
- end while false
779
- _trans = _lexer_indicies[_trans]
780
- cs = _lexer_trans_targs[_trans]
781
- if _lexer_trans_actions[_trans] != 0
782
- _acts = _lexer_trans_actions[_trans]
783
- _nacts = _lexer_actions[_acts]
784
- _acts += 1
785
- while _nacts > 0
786
- _nacts -= 1
787
- _acts += 1
788
- case _lexer_actions[_acts - 1]
789
- when 0 then
790
- # line 9 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
791
- begin
792
-
793
- @content_start = p
794
- @current_line = @line_number
795
- @start_col = p - @last_newline - "#{@keyword}:".length
796
- end
797
- when 1 then
798
- # line 15 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
799
- begin
800
-
801
- @current_line = @line_number
802
- @start_col = p - @last_newline
803
- end
804
- when 2 then
805
- # line 20 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
806
- begin
807
-
808
- @content_start = p
809
- end
810
- when 3 then
811
- # line 24 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
812
- begin
813
-
814
- @docstring_content_type_start = p
815
- end
816
- when 4 then
817
- # line 27 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
818
- begin
819
-
820
- @docstring_content_type_end = p
821
- end
822
- when 5 then
823
- # line 31 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
824
- begin
825
-
826
- con = unindent(@start_col, utf8_pack(data[@content_start...@next_keyword_start-1]).sub(/(\r?\n)?([\t ])*\Z/, '').gsub(/\\"\\"\\"/, '"""'))
827
- con_type = utf8_pack(data[@docstring_content_type_start...@docstring_content_type_end]).strip
828
- @listener.doc_string(con_type, con, @current_line)
829
- end
830
- when 6 then
831
- # line 36 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
832
- begin
833
-
834
- p = store_keyword_content(:feature, data, p, eof)
835
- end
836
- when 7 then
837
- # line 40 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
838
- begin
839
-
840
- p = store_keyword_content(:background, data, p, eof)
841
- end
842
- when 8 then
843
- # line 44 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
844
- begin
845
-
846
- p = store_keyword_content(:scenario, data, p, eof)
847
- end
848
- when 9 then
849
- # line 48 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
850
- begin
851
-
852
- p = store_keyword_content(:scenario_outline, data, p, eof)
853
- end
854
- when 10 then
855
- # line 52 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
856
- begin
857
-
858
- p = store_keyword_content(:examples, data, p, eof)
859
- end
860
- when 11 then
861
- # line 56 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
862
- begin
863
-
864
- con = utf8_pack(data[@content_start...p]).strip
865
- @listener.step(@keyword, con, @current_line)
866
- end
867
- when 12 then
868
- # line 61 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
869
- begin
870
-
871
- con = utf8_pack(data[@content_start...p]).strip
872
- @listener.comment(con, @line_number)
873
- @keyword_start = nil
874
- end
875
- when 13 then
876
- # line 67 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
877
- begin
878
-
879
- con = utf8_pack(data[@content_start...p]).strip
880
- @listener.tag(con, @current_line)
881
- @keyword_start = nil
882
- end
883
- when 14 then
884
- # line 73 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
885
- begin
886
-
887
- @line_number += 1
888
- end
889
- when 15 then
890
- # line 77 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
891
- begin
892
-
893
- @last_newline = p + 1
894
- end
895
- when 16 then
896
- # line 81 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
897
- begin
898
-
899
- @keyword_start ||= p
900
- end
901
- when 17 then
902
- # line 85 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
903
- begin
904
-
905
- @keyword = utf8_pack(data[@keyword_start...p]).sub(/:$/,'')
906
- @keyword_start = nil
907
- end
908
- when 18 then
909
- # line 90 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
910
- begin
911
-
912
- @next_keyword_start = p
913
- end
914
- when 19 then
915
- # line 94 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
916
- begin
917
-
918
- p = p - 1
919
- current_row = []
920
- @current_line = @line_number
921
- end
922
- when 20 then
923
- # line 100 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
924
- begin
925
-
926
- @content_start = p
927
- end
928
- when 21 then
929
- # line 104 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
930
- begin
931
-
932
- con = utf8_pack(data[@content_start...p]).strip
933
- current_row << con.gsub(/\\\|/, "|").gsub(/\\n/, "\n").gsub(/\\\\/, "\\")
934
- end
935
- when 22 then
936
- # line 109 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
937
- begin
938
-
939
- @listener.row(current_row, @current_line)
940
- end
941
- when 23 then
942
- # line 113 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
943
- begin
944
-
945
- if cs < lexer_first_final
946
- content = current_line_content(data, p)
947
- raise Gherkin::Lexer::LexingError.new("Lexing error on line %d: '%s'. See http://wiki.github.com/cucumber/gherkin/lexingerror for more information." % [@line_number, content])
948
- else
949
- @listener.eof
950
- end
951
- end
952
- # line 953 "lib/gherkin/rb_lexer/sk.rb"
953
- end # action switch
954
- end
955
- end
956
- if _trigger_goto
957
- next
958
- end
959
- end
960
- if _goto_level <= _again
961
- if cs == 0
962
- _goto_level = _out
963
- next
964
- end
965
- p += 1
966
- if p != pe
967
- _goto_level = _resume
968
- next
969
- end
970
- end
971
- if _goto_level <= _test_eof
972
- if p == eof
973
- __acts = _lexer_eof_actions[cs]
974
- __nacts = _lexer_actions[__acts]
975
- __acts += 1
976
- while __nacts > 0
977
- __nacts -= 1
978
- __acts += 1
979
- case _lexer_actions[__acts - 1]
980
- when 23 then
981
- # line 113 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
982
- begin
983
-
984
- if cs < lexer_first_final
985
- content = current_line_content(data, p)
986
- raise Gherkin::Lexer::LexingError.new("Lexing error on line %d: '%s'. See http://wiki.github.com/cucumber/gherkin/lexingerror for more information." % [@line_number, content])
987
- else
988
- @listener.eof
989
- end
990
- end
991
- # line 992 "lib/gherkin/rb_lexer/sk.rb"
992
- end # eof action switch
993
- end
994
- if _trigger_goto
995
- next
996
- end
997
- end
998
- end
999
- if _goto_level <= _out
1000
- break
1001
- end
1002
- end
1003
- end
1004
-
1005
- # line 139 "/Users/ahellesoy/github/gherkin/tasks/../ragel/i18n/sk.rb.rl"
1006
- end
1007
-
1008
- def unindent(startcol, text)
1009
- text.gsub(/^[\t ]{0,#{startcol}}/, "")
1010
- end
1011
-
1012
- def store_keyword_content(event, data, p, eof)
1013
- end_point = (!@next_keyword_start or (p == eof)) ? p : @next_keyword_start
1014
- content = unindent(@start_col + 2, utf8_pack(data[@content_start...end_point])).rstrip
1015
- content_lines = content.split("\n")
1016
- name = content_lines.shift || ""
1017
- name.strip!
1018
- description = content_lines.join("\n")
1019
- @listener.__send__(event, @keyword, name, description, @current_line)
1020
- @next_keyword_start ? @next_keyword_start - 1 : p
1021
- ensure
1022
- @next_keyword_start = nil
1023
- end
1024
-
1025
- def current_line_content(data, p)
1026
- rest = data[@last_newline..-1]
1027
- utf8_pack(rest[0..rest.index(10)||-1]).strip # 10 is \n
1028
- end
1029
-
1030
- if (RUBY_VERSION =~ /^1\.9/)
1031
- def utf8_pack(array)
1032
- array.pack("c*").force_encoding("UTF-8")
1033
- end
1034
- else
1035
- def utf8_pack(array)
1036
- array.pack("c*")
1037
- end
1038
- end
1039
- end
1040
- end
1041
- end