gherkin 2.3.5-universal-dotnet → 2.3.6-universal-dotnet

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. data/.gitmodules +3 -0
  2. data/Gemfile +1 -1
  3. data/History.txt +9 -0
  4. data/README.rdoc +34 -2
  5. data/VERSION +1 -1
  6. data/features/step_definitions/pretty_formatter_steps.rb +1 -0
  7. data/gherkin.gemspec +4 -1
  8. data/js/.gitignore +1 -0
  9. data/js/.npmignore +1 -0
  10. data/js/lib/gherkin/lexer/.gitignore +1 -0
  11. data/lib/gherkin/i18n.rb +5 -0
  12. data/lib/gherkin/i18n.yml +3 -3
  13. data/lib/gherkin/js_lexer.rb +20 -0
  14. data/lib/gherkin/lexer/i18n_lexer.rb +1 -1
  15. data/lib/gherkin/rubify.rb +7 -0
  16. data/ragel/lexer.c.rl.erb +30 -32
  17. data/ragel/lexer.js.rl.erb +208 -0
  18. data/ragel/lexer.rb.rl.erb +1 -1
  19. data/spec/gherkin/c_lexer_spec.rb +1 -0
  20. data/spec/gherkin/js_lexer_spec.rb +23 -0
  21. data/spec/gherkin/rb_lexer_spec.rb +1 -0
  22. data/spec/gherkin/sexp_recorder.rb +14 -8
  23. data/spec/gherkin/shared/bom_group.rb +20 -0
  24. data/spec/gherkin/shared/lexer_group.rb +0 -10
  25. data/spec/spec_helper.rb +2 -0
  26. data/tasks/compile.rake +9 -0
  27. data/tasks/ikvm.rake +1 -0
  28. data/tasks/ragel_task.rb +8 -2
  29. data/tasks/release.rake +8 -1
  30. metadata +29 -52
  31. data/js/lib/gherkin/lexer/i18n/ar.js +0 -1094
  32. data/js/lib/gherkin/lexer/i18n/bg.js +0 -1308
  33. data/js/lib/gherkin/lexer/i18n/ca.js +0 -1236
  34. data/js/lib/gherkin/lexer/i18n/cs.js +0 -1090
  35. data/js/lib/gherkin/lexer/i18n/cy_gb.js +0 -958
  36. data/js/lib/gherkin/lexer/i18n/da.js +0 -974
  37. data/js/lib/gherkin/lexer/i18n/de.js +0 -1082
  38. data/js/lib/gherkin/lexer/i18n/en.js +0 -965
  39. data/js/lib/gherkin/lexer/i18n/en_au.js +0 -902
  40. data/js/lib/gherkin/lexer/i18n/en_lol.js +0 -859
  41. data/js/lib/gherkin/lexer/i18n/en_pirate.js +0 -1136
  42. data/js/lib/gherkin/lexer/i18n/en_scouse.js +0 -1289
  43. data/js/lib/gherkin/lexer/i18n/en_tx.js +0 -942
  44. data/js/lib/gherkin/lexer/i18n/eo.js +0 -916
  45. data/js/lib/gherkin/lexer/i18n/es.js +0 -1049
  46. data/js/lib/gherkin/lexer/i18n/et.js +0 -915
  47. data/js/lib/gherkin/lexer/i18n/fi.js +0 -894
  48. data/js/lib/gherkin/lexer/i18n/fr.js +0 -1116
  49. data/js/lib/gherkin/lexer/i18n/he.js +0 -1044
  50. data/js/lib/gherkin/lexer/i18n/hr.js +0 -994
  51. data/js/lib/gherkin/lexer/i18n/hu.js +0 -1043
  52. data/js/lib/gherkin/lexer/i18n/id.js +0 -884
  53. data/js/lib/gherkin/lexer/i18n/it.js +0 -1007
  54. data/js/lib/gherkin/lexer/i18n/ja.js +0 -1344
  55. data/js/lib/gherkin/lexer/i18n/ko.js +0 -1028
  56. data/js/lib/gherkin/lexer/i18n/lt.js +0 -972
  57. data/js/lib/gherkin/lexer/i18n/lu.js +0 -1057
  58. data/js/lib/gherkin/lexer/i18n/lv.js +0 -1092
  59. data/js/lib/gherkin/lexer/i18n/nl.js +0 -1036
  60. data/js/lib/gherkin/lexer/i18n/no.js +0 -986
  61. data/js/lib/gherkin/lexer/i18n/pl.js +0 -1140
  62. data/js/lib/gherkin/lexer/i18n/pt.js +0 -1000
  63. data/js/lib/gherkin/lexer/i18n/ro.js +0 -1089
  64. data/js/lib/gherkin/lexer/i18n/ru.js +0 -1560
  65. data/js/lib/gherkin/lexer/i18n/sk.js +0 -972
  66. data/js/lib/gherkin/lexer/i18n/sr_cyrl.js +0 -1728
  67. data/js/lib/gherkin/lexer/i18n/sr_latn.js +0 -1220
  68. data/js/lib/gherkin/lexer/i18n/sv.js +0 -997
  69. data/js/lib/gherkin/lexer/i18n/tr.js +0 -1014
  70. data/js/lib/gherkin/lexer/i18n/uk.js +0 -1572
  71. data/js/lib/gherkin/lexer/i18n/uz.js +0 -1302
  72. data/js/lib/gherkin/lexer/i18n/vi.js +0 -1124
  73. data/js/lib/gherkin/lexer/i18n/zh_cn.js +0 -902
  74. data/js/lib/gherkin/lexer/i18n/zh_tw.js +0 -940
@@ -1,974 +0,0 @@
1
-
2
- /* line 1 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
3
- ;(function() {
4
-
5
-
6
- /* line 107 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
7
-
8
-
9
-
10
- /* line 11 "js/lib/gherkin/lexer/i18n/da.js" */
11
- const _lexer_actions = [
12
- 0, 1, 0, 1, 1, 1, 2, 1,
13
- 3, 1, 4, 1, 5, 1, 6, 1,
14
- 7, 1, 8, 1, 9, 1, 10, 1,
15
- 11, 1, 14, 1, 15, 1, 16, 1,
16
- 17, 1, 18, 1, 19, 1, 20, 1,
17
- 21, 2, 2, 16, 2, 11, 0, 2,
18
- 12, 13, 2, 15, 0, 2, 15, 1,
19
- 2, 15, 14, 2, 15, 17, 2, 16,
20
- 4, 2, 16, 5, 2, 16, 6, 2,
21
- 16, 7, 2, 16, 8, 2, 16, 14,
22
- 2, 18, 19, 2, 20, 0, 2, 20,
23
- 1, 2, 20, 14, 2, 20, 17, 3,
24
- 3, 12, 13, 3, 9, 12, 13, 3,
25
- 10, 12, 13, 3, 11, 12, 13, 3,
26
- 12, 13, 16, 3, 15, 12, 13, 4,
27
- 2, 12, 13, 16, 4, 15, 0, 12,
28
- 13
29
- ];
30
-
31
- const _lexer_key_offsets = [
32
- 0, 0, 19, 37, 38, 39, 43, 48,
33
- 53, 58, 63, 67, 71, 73, 74, 75,
34
- 76, 77, 78, 79, 80, 81, 82, 83,
35
- 84, 85, 86, 87, 88, 89, 90, 92,
36
- 97, 104, 109, 110, 111, 112, 113, 114,
37
- 115, 116, 117, 118, 119, 120, 121, 122,
38
- 123, 124, 125, 126, 127, 128, 142, 144,
39
- 146, 148, 150, 152, 154, 156, 158, 160,
40
- 162, 164, 166, 168, 170, 172, 190, 191,
41
- 192, 193, 194, 195, 196, 197, 198, 199,
42
- 200, 215, 217, 219, 221, 223, 225, 227,
43
- 229, 231, 233, 235, 237, 239, 241, 243,
44
- 245, 247, 249, 251, 253, 255, 257, 259,
45
- 261, 263, 265, 267, 269, 271, 273, 275,
46
- 277, 279, 281, 283, 285, 287, 289, 291,
47
- 293, 295, 297, 299, 301, 303, 305, 307,
48
- 309, 311, 313, 316, 318, 320, 322, 324,
49
- 326, 328, 330, 332, 333, 334, 335, 336,
50
- 337, 338, 339, 340, 341, 352, 354, 356,
51
- 358, 360, 362, 364, 366, 368, 370, 372,
52
- 374, 376, 378, 380, 382, 384, 386, 388,
53
- 390, 392, 394, 396, 398, 400, 402, 404,
54
- 406, 408, 410, 412, 414, 416, 418, 420,
55
- 422, 424, 426, 428, 431, 433, 435, 437,
56
- 439, 441, 443, 445, 447, 449, 451, 453,
57
- 455, 457, 459, 461, 463, 465, 467, 469,
58
- 471, 472, 473, 474, 475, 476, 477, 478,
59
- 479, 480, 481, 488, 490, 492, 494, 496,
60
- 498, 500, 502, 504, 505, 506, 507, 508,
61
- 509, 510, 511, 512, 513, 514, 516, 517,
62
- 518, 519, 520, 521, 522, 523, 524, 525,
63
- 526, 542, 544, 546, 548, 550, 552, 554,
64
- 556, 558, 560, 562, 564, 566, 568, 570,
65
- 572, 574, 576, 578, 580, 582, 584, 586,
66
- 588, 590, 592, 594, 596, 598, 600, 602,
67
- 604, 606, 608, 610, 612, 614, 616, 618,
68
- 620, 622, 624, 626, 628, 630, 632, 634,
69
- 636, 638, 640, 642, 644, 646, 648, 650,
70
- 652, 654, 657, 659, 661, 663, 665, 667,
71
- 669, 671, 675, 681, 684, 686, 692, 710,
72
- 712, 714, 716, 718, 720, 722, 724, 726,
73
- 728, 730, 732, 734, 736, 738, 740, 742,
74
- 744, 746, 749, 751, 753, 755, 757, 759,
75
- 761, 763, 764, 765
76
- ];
77
-
78
- const _lexer_trans_keys = [
79
- 10, 32, 34, 35, 37, 42, 64, 65,
80
- 66, 69, 71, 77, 78, 79, 83, 124,
81
- 239, 9, 13, 10, 32, 34, 35, 37,
82
- 42, 64, 65, 66, 69, 71, 77, 78,
83
- 79, 83, 124, 9, 13, 34, 34, 10,
84
- 32, 9, 13, 10, 32, 34, 9, 13,
85
- 10, 32, 34, 9, 13, 10, 32, 34,
86
- 9, 13, 10, 32, 34, 9, 13, 10,
87
- 32, 9, 13, 10, 32, 9, 13, 10,
88
- 13, 10, 95, 70, 69, 65, 84, 85,
89
- 82, 69, 95, 69, 78, 68, 95, 37,
90
- 32, 10, 10, 13, 13, 32, 64, 9,
91
- 10, 9, 10, 13, 32, 64, 11, 12,
92
- 10, 32, 64, 9, 13, 98, 115, 116,
93
- 114, 97, 107, 116, 32, 83, 99, 101,
94
- 110, 97, 114, 105, 111, 58, 10, 10,
95
- 10, 32, 35, 37, 42, 64, 69, 71,
96
- 77, 78, 79, 83, 9, 13, 10, 95,
97
- 10, 70, 10, 69, 10, 65, 10, 84,
98
- 10, 85, 10, 82, 10, 69, 10, 95,
99
- 10, 69, 10, 78, 10, 68, 10, 95,
100
- 10, 37, 10, 32, 10, 32, 34, 35,
101
- 37, 42, 64, 65, 66, 69, 71, 77,
102
- 78, 79, 83, 124, 9, 13, 97, 103,
103
- 103, 114, 117, 110, 100, 58, 10, 10,
104
- 10, 32, 35, 37, 42, 64, 65, 69,
105
- 71, 77, 78, 79, 83, 9, 13, 10,
106
- 95, 10, 70, 10, 69, 10, 65, 10,
107
- 84, 10, 85, 10, 82, 10, 69, 10,
108
- 95, 10, 69, 10, 78, 10, 68, 10,
109
- 95, 10, 37, 10, 32, 10, 98, 10,
110
- 115, 10, 116, 10, 114, 10, 97, 10,
111
- 107, 10, 116, 10, 32, 10, 83, 10,
112
- 99, 10, 101, 10, 110, 10, 97, 10,
113
- 114, 10, 105, 10, 111, 10, 58, 10,
114
- 103, 10, 101, 10, 110, 10, 115, 10,
115
- 107, 10, 97, 10, 98, 10, 105, 10,
116
- 118, 10, 101, 10, 116, 10, 101, 10,
117
- 110, -61, 10, -91, 10, 10, 114, 10,
118
- 103, -61, 10, 99, -91, 10, 10, 101,
119
- 10, 110, 10, 97, 10, 114, 10, 105,
120
- 10, 101, 103, 107, 101, 110, 115, 107,
121
- 97, 98, 58, 10, 10, 10, 32, 35,
122
- 37, 64, 65, 66, 69, 83, 9, 13,
123
- 10, 95, 10, 70, 10, 69, 10, 65,
124
- 10, 84, 10, 85, 10, 82, 10, 69,
125
- 10, 95, 10, 69, 10, 78, 10, 68,
126
- 10, 95, 10, 37, 10, 98, 10, 115,
127
- 10, 116, 10, 114, 10, 97, 10, 107,
128
- 10, 116, 10, 32, 10, 83, 10, 99,
129
- 10, 101, 10, 110, 10, 97, 10, 114,
130
- 10, 105, 10, 111, 10, 58, 10, 97,
131
- 10, 103, 10, 103, 10, 114, 10, 117,
132
- 10, 110, 10, 100, 10, 103, 107, 10,
133
- 101, 10, 110, 10, 115, 10, 107, 10,
134
- 97, 10, 98, 10, 115, 10, 101, 10,
135
- 109, 10, 112, 10, 108, 10, 101, 10,
136
- 114, 10, 99, 10, 101, 10, 110, 10,
137
- 97, 10, 114, 10, 105, 10, 101, 115,
138
- 101, 109, 112, 108, 101, 114, 58, 10,
139
- 10, 10, 32, 35, 69, 124, 9, 13,
140
- 10, 103, 10, 101, 10, 110, 10, 115,
141
- 10, 107, 10, 97, 10, 98, 10, 58,
142
- 105, 118, 101, 116, 101, 110, -61, -91,
143
- 114, 103, -61, 99, -91, 101, 110, 97,
144
- 114, 105, 101, 58, 10, 10, 10, 32,
145
- 35, 37, 42, 64, 65, 66, 69, 71,
146
- 77, 78, 79, 83, 9, 13, 10, 95,
147
- 10, 70, 10, 69, 10, 65, 10, 84,
148
- 10, 85, 10, 82, 10, 69, 10, 95,
149
- 10, 69, 10, 78, 10, 68, 10, 95,
150
- 10, 37, 10, 32, 10, 98, 10, 115,
151
- 10, 116, 10, 114, 10, 97, 10, 107,
152
- 10, 116, 10, 32, 10, 83, 10, 99,
153
- 10, 101, 10, 110, 10, 97, 10, 114,
154
- 10, 105, 10, 111, 10, 58, 10, 97,
155
- 10, 103, 10, 103, 10, 114, 10, 117,
156
- 10, 110, 10, 100, 10, 103, 10, 101,
157
- 10, 110, 10, 115, 10, 107, 10, 97,
158
- 10, 98, 10, 105, 10, 118, 10, 101,
159
- 10, 116, 10, 101, 10, 110, -61, 10,
160
- -91, 10, 10, 114, 10, 103, -61, 10,
161
- 99, -91, 10, 10, 101, 10, 110, 10,
162
- 97, 10, 114, 10, 105, 10, 101, 32,
163
- 124, 9, 13, 10, 32, 92, 124, 9,
164
- 13, 10, 92, 124, 10, 92, 10, 32,
165
- 92, 124, 9, 13, 10, 32, 34, 35,
166
- 37, 42, 64, 65, 66, 69, 71, 77,
167
- 78, 79, 83, 124, 9, 13, 10, 103,
168
- 10, 101, 10, 110, 10, 115, 10, 107,
169
- 10, 97, 10, 98, 10, 58, 10, 105,
170
- 10, 118, 10, 101, 10, 116, 10, 101,
171
- 10, 110, -61, 10, -91, 10, 10, 114,
172
- 10, 103, -61, 10, 99, -91, 10, 10,
173
- 101, 10, 110, 10, 97, 10, 114, 10,
174
- 105, 10, 101, 187, 191, 0
175
- ];
176
-
177
- const _lexer_single_lengths = [
178
- 0, 17, 16, 1, 1, 2, 3, 3,
179
- 3, 3, 2, 2, 2, 1, 1, 1,
180
- 1, 1, 1, 1, 1, 1, 1, 1,
181
- 1, 1, 1, 1, 1, 1, 2, 3,
182
- 5, 3, 1, 1, 1, 1, 1, 1,
183
- 1, 1, 1, 1, 1, 1, 1, 1,
184
- 1, 1, 1, 1, 1, 12, 2, 2,
185
- 2, 2, 2, 2, 2, 2, 2, 2,
186
- 2, 2, 2, 2, 2, 16, 1, 1,
187
- 1, 1, 1, 1, 1, 1, 1, 1,
188
- 13, 2, 2, 2, 2, 2, 2, 2,
189
- 2, 2, 2, 2, 2, 2, 2, 2,
190
- 2, 2, 2, 2, 2, 2, 2, 2,
191
- 2, 2, 2, 2, 2, 2, 2, 2,
192
- 2, 2, 2, 2, 2, 2, 2, 2,
193
- 2, 2, 2, 2, 2, 2, 2, 2,
194
- 2, 2, 3, 2, 2, 2, 2, 2,
195
- 2, 2, 2, 1, 1, 1, 1, 1,
196
- 1, 1, 1, 1, 9, 2, 2, 2,
197
- 2, 2, 2, 2, 2, 2, 2, 2,
198
- 2, 2, 2, 2, 2, 2, 2, 2,
199
- 2, 2, 2, 2, 2, 2, 2, 2,
200
- 2, 2, 2, 2, 2, 2, 2, 2,
201
- 2, 2, 2, 3, 2, 2, 2, 2,
202
- 2, 2, 2, 2, 2, 2, 2, 2,
203
- 2, 2, 2, 2, 2, 2, 2, 2,
204
- 1, 1, 1, 1, 1, 1, 1, 1,
205
- 1, 1, 5, 2, 2, 2, 2, 2,
206
- 2, 2, 2, 1, 1, 1, 1, 1,
207
- 1, 1, 1, 1, 1, 2, 1, 1,
208
- 1, 1, 1, 1, 1, 1, 1, 1,
209
- 14, 2, 2, 2, 2, 2, 2, 2,
210
- 2, 2, 2, 2, 2, 2, 2, 2,
211
- 2, 2, 2, 2, 2, 2, 2, 2,
212
- 2, 2, 2, 2, 2, 2, 2, 2,
213
- 2, 2, 2, 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, 3, 2, 2, 2, 2, 2, 2,
217
- 2, 2, 4, 3, 2, 4, 16, 2,
218
- 2, 2, 2, 2, 2, 2, 2, 2,
219
- 2, 2, 2, 2, 2, 2, 2, 2,
220
- 2, 3, 2, 2, 2, 2, 2, 2,
221
- 2, 1, 1, 0
222
- ];
223
-
224
- const _lexer_range_lengths = [
225
- 0, 1, 1, 0, 0, 1, 1, 1,
226
- 1, 1, 1, 1, 0, 0, 0, 0,
227
- 0, 0, 0, 0, 0, 0, 0, 0,
228
- 0, 0, 0, 0, 0, 0, 0, 1,
229
- 1, 1, 0, 0, 0, 0, 0, 0,
230
- 0, 0, 0, 0, 0, 0, 0, 0,
231
- 0, 0, 0, 0, 0, 1, 0, 0,
232
- 0, 0, 0, 0, 0, 0, 0, 0,
233
- 0, 0, 0, 0, 0, 1, 0, 0,
234
- 0, 0, 0, 0, 0, 0, 0, 0,
235
- 1, 0, 0, 0, 0, 0, 0, 0,
236
- 0, 0, 0, 0, 0, 0, 0, 0,
237
- 0, 0, 0, 0, 0, 0, 0, 0,
238
- 0, 0, 0, 0, 0, 0, 0, 0,
239
- 0, 0, 0, 0, 0, 0, 0, 0,
240
- 0, 0, 0, 0, 0, 0, 0, 0,
241
- 0, 0, 0, 0, 0, 0, 0, 0,
242
- 0, 0, 0, 0, 0, 0, 0, 0,
243
- 0, 0, 0, 0, 1, 0, 0, 0,
244
- 0, 0, 0, 0, 0, 0, 0, 0,
245
- 0, 0, 0, 0, 0, 0, 0, 0,
246
- 0, 0, 0, 0, 0, 0, 0, 0,
247
- 0, 0, 0, 0, 0, 0, 0, 0,
248
- 0, 0, 0, 0, 0, 0, 0, 0,
249
- 0, 0, 0, 0, 0, 0, 0, 0,
250
- 0, 0, 0, 0, 0, 0, 0, 0,
251
- 0, 0, 0, 0, 0, 0, 0, 0,
252
- 0, 0, 1, 0, 0, 0, 0, 0,
253
- 0, 0, 0, 0, 0, 0, 0, 0,
254
- 0, 0, 0, 0, 0, 0, 0, 0,
255
- 0, 0, 0, 0, 0, 0, 0, 0,
256
- 1, 0, 0, 0, 0, 0, 0, 0,
257
- 0, 0, 0, 0, 0, 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, 0, 0, 0, 0,
261
- 0, 0, 0, 0, 0, 0, 0, 0,
262
- 0, 0, 0, 0, 0, 0, 0, 0,
263
- 0, 0, 0, 0, 0, 0, 0, 0,
264
- 0, 1, 1, 0, 0, 1, 1, 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
269
- ];
270
-
271
- const _lexer_index_offsets = [
272
- 0, 0, 19, 37, 39, 41, 45, 50,
273
- 55, 60, 65, 69, 73, 76, 78, 80,
274
- 82, 84, 86, 88, 90, 92, 94, 96,
275
- 98, 100, 102, 104, 106, 108, 110, 113,
276
- 118, 125, 130, 132, 134, 136, 138, 140,
277
- 142, 144, 146, 148, 150, 152, 154, 156,
278
- 158, 160, 162, 164, 166, 168, 182, 185,
279
- 188, 191, 194, 197, 200, 203, 206, 209,
280
- 212, 215, 218, 221, 224, 227, 245, 247,
281
- 249, 251, 253, 255, 257, 259, 261, 263,
282
- 265, 280, 283, 286, 289, 292, 295, 298,
283
- 301, 304, 307, 310, 313, 316, 319, 322,
284
- 325, 328, 331, 334, 337, 340, 343, 346,
285
- 349, 352, 355, 358, 361, 364, 367, 370,
286
- 373, 376, 379, 382, 385, 388, 391, 394,
287
- 397, 400, 403, 406, 409, 412, 415, 418,
288
- 421, 424, 427, 431, 434, 437, 440, 443,
289
- 446, 449, 452, 455, 457, 459, 461, 463,
290
- 465, 467, 469, 471, 473, 484, 487, 490,
291
- 493, 496, 499, 502, 505, 508, 511, 514,
292
- 517, 520, 523, 526, 529, 532, 535, 538,
293
- 541, 544, 547, 550, 553, 556, 559, 562,
294
- 565, 568, 571, 574, 577, 580, 583, 586,
295
- 589, 592, 595, 598, 602, 605, 608, 611,
296
- 614, 617, 620, 623, 626, 629, 632, 635,
297
- 638, 641, 644, 647, 650, 653, 656, 659,
298
- 662, 664, 666, 668, 670, 672, 674, 676,
299
- 678, 680, 682, 689, 692, 695, 698, 701,
300
- 704, 707, 710, 713, 715, 717, 719, 721,
301
- 723, 725, 727, 729, 731, 733, 736, 738,
302
- 740, 742, 744, 746, 748, 750, 752, 754,
303
- 756, 772, 775, 778, 781, 784, 787, 790,
304
- 793, 796, 799, 802, 805, 808, 811, 814,
305
- 817, 820, 823, 826, 829, 832, 835, 838,
306
- 841, 844, 847, 850, 853, 856, 859, 862,
307
- 865, 868, 871, 874, 877, 880, 883, 886,
308
- 889, 892, 895, 898, 901, 904, 907, 910,
309
- 913, 916, 919, 922, 925, 928, 931, 934,
310
- 937, 940, 944, 947, 950, 953, 956, 959,
311
- 962, 965, 969, 975, 979, 982, 988, 1006,
312
- 1009, 1012, 1015, 1018, 1021, 1024, 1027, 1030,
313
- 1033, 1036, 1039, 1042, 1045, 1048, 1051, 1054,
314
- 1057, 1060, 1064, 1067, 1070, 1073, 1076, 1079,
315
- 1082, 1085, 1087, 1089
316
- ];
317
-
318
- const _lexer_indicies = [
319
- 2, 1, 3, 4, 5, 6, 7, 8,
320
- 9, 10, 11, 12, 13, 14, 15, 16,
321
- 17, 1, 0, 2, 1, 3, 4, 5,
322
- 6, 7, 8, 9, 10, 11, 12, 13,
323
- 14, 15, 16, 1, 0, 18, 0, 19,
324
- 0, 20, 19, 19, 0, 23, 22, 24,
325
- 22, 21, 27, 26, 28, 26, 25, 27,
326
- 26, 29, 26, 25, 27, 26, 30, 26,
327
- 25, 32, 31, 31, 0, 2, 33, 33,
328
- 0, 35, 36, 34, 2, 0, 37, 0,
329
- 38, 0, 39, 0, 40, 0, 41, 0,
330
- 42, 0, 43, 0, 44, 0, 45, 0,
331
- 46, 0, 47, 0, 48, 0, 49, 0,
332
- 50, 0, 51, 0, 0, 52, 54, 55,
333
- 53, 0, 0, 0, 0, 56, 57, 58,
334
- 57, 57, 60, 59, 56, 2, 61, 7,
335
- 61, 0, 62, 0, 63, 0, 64, 0,
336
- 65, 0, 66, 0, 67, 0, 68, 0,
337
- 69, 0, 70, 0, 71, 0, 72, 0,
338
- 73, 0, 74, 0, 75, 0, 76, 0,
339
- 77, 0, 78, 0, 80, 79, 82, 81,
340
- 82, 83, 84, 85, 86, 84, 87, 88,
341
- 89, 90, 91, 92, 83, 81, 82, 93,
342
- 81, 82, 94, 81, 82, 95, 81, 82,
343
- 96, 81, 82, 97, 81, 82, 98, 81,
344
- 82, 99, 81, 82, 100, 81, 82, 101,
345
- 81, 82, 102, 81, 82, 103, 81, 82,
346
- 104, 81, 82, 105, 81, 82, 106, 81,
347
- 82, 107, 81, 109, 108, 110, 111, 112,
348
- 113, 114, 115, 116, 117, 118, 119, 120,
349
- 121, 122, 123, 108, 0, 124, 0, 125,
350
- 0, 126, 0, 127, 0, 128, 0, 129,
351
- 0, 130, 0, 131, 0, 133, 132, 135,
352
- 134, 135, 136, 137, 138, 139, 137, 140,
353
- 141, 142, 143, 144, 145, 146, 136, 134,
354
- 135, 147, 134, 135, 148, 134, 135, 149,
355
- 134, 135, 150, 134, 135, 151, 134, 135,
356
- 152, 134, 135, 153, 134, 135, 154, 134,
357
- 135, 155, 134, 135, 156, 134, 135, 157,
358
- 134, 135, 158, 134, 135, 159, 134, 135,
359
- 160, 134, 135, 161, 134, 135, 162, 134,
360
- 135, 163, 134, 135, 164, 134, 135, 165,
361
- 134, 135, 166, 134, 135, 167, 134, 135,
362
- 168, 134, 135, 169, 134, 135, 170, 134,
363
- 135, 171, 134, 135, 172, 134, 135, 173,
364
- 134, 135, 174, 134, 135, 175, 134, 135,
365
- 176, 134, 135, 177, 134, 135, 161, 134,
366
- 135, 178, 134, 135, 179, 134, 135, 180,
367
- 134, 135, 181, 134, 135, 182, 134, 135,
368
- 183, 134, 135, 177, 134, 135, 184, 134,
369
- 135, 185, 134, 135, 186, 134, 135, 187,
370
- 134, 135, 188, 134, 135, 187, 134, 189,
371
- 135, 134, 190, 135, 134, 135, 187, 134,
372
- 135, 187, 134, 191, 135, 192, 134, 187,
373
- 135, 134, 135, 193, 134, 135, 194, 134,
374
- 135, 195, 134, 135, 196, 134, 135, 197,
375
- 134, 135, 177, 134, 198, 199, 0, 200,
376
- 0, 201, 0, 202, 0, 203, 0, 204,
377
- 0, 205, 0, 206, 0, 208, 207, 210,
378
- 209, 210, 211, 212, 213, 212, 214, 215,
379
- 216, 217, 211, 209, 210, 218, 209, 210,
380
- 219, 209, 210, 220, 209, 210, 221, 209,
381
- 210, 222, 209, 210, 223, 209, 210, 224,
382
- 209, 210, 225, 209, 210, 226, 209, 210,
383
- 227, 209, 210, 228, 209, 210, 229, 209,
384
- 210, 230, 209, 210, 231, 209, 210, 232,
385
- 209, 210, 233, 209, 210, 234, 209, 210,
386
- 235, 209, 210, 236, 209, 210, 237, 209,
387
- 210, 238, 209, 210, 239, 209, 210, 240,
388
- 209, 210, 241, 209, 210, 242, 209, 210,
389
- 243, 209, 210, 244, 209, 210, 245, 209,
390
- 210, 246, 209, 210, 247, 209, 210, 248,
391
- 209, 210, 249, 209, 210, 250, 209, 210,
392
- 251, 209, 210, 252, 209, 210, 253, 209,
393
- 210, 254, 209, 210, 247, 209, 210, 255,
394
- 256, 209, 210, 257, 209, 210, 258, 209,
395
- 210, 259, 209, 210, 260, 209, 210, 261,
396
- 209, 210, 247, 209, 210, 262, 209, 210,
397
- 263, 209, 210, 264, 209, 210, 265, 209,
398
- 210, 266, 209, 210, 267, 209, 210, 247,
399
- 209, 210, 268, 209, 210, 269, 209, 210,
400
- 270, 209, 210, 271, 209, 210, 272, 209,
401
- 210, 273, 209, 210, 247, 209, 274, 0,
402
- 275, 0, 276, 0, 277, 0, 278, 0,
403
- 279, 0, 280, 0, 281, 0, 283, 282,
404
- 285, 284, 285, 286, 287, 288, 287, 286,
405
- 284, 285, 289, 284, 285, 290, 284, 285,
406
- 291, 284, 285, 292, 284, 285, 293, 284,
407
- 285, 294, 284, 285, 295, 284, 285, 296,
408
- 284, 297, 0, 298, 0, 299, 0, 300,
409
- 0, 301, 0, 300, 0, 302, 0, 303,
410
- 0, 300, 0, 300, 0, 304, 305, 0,
411
- 300, 0, 306, 0, 307, 0, 308, 0,
412
- 309, 0, 310, 0, 311, 0, 312, 0,
413
- 314, 313, 316, 315, 316, 317, 318, 319,
414
- 320, 318, 321, 322, 323, 324, 325, 326,
415
- 327, 328, 317, 315, 316, 329, 315, 316,
416
- 330, 315, 316, 331, 315, 316, 332, 315,
417
- 316, 333, 315, 316, 334, 315, 316, 335,
418
- 315, 316, 336, 315, 316, 337, 315, 316,
419
- 338, 315, 316, 339, 315, 316, 340, 315,
420
- 316, 341, 315, 316, 342, 315, 316, 343,
421
- 315, 316, 344, 315, 316, 345, 315, 316,
422
- 346, 315, 316, 347, 315, 316, 348, 315,
423
- 316, 349, 315, 316, 350, 315, 316, 351,
424
- 315, 316, 352, 315, 316, 353, 315, 316,
425
- 354, 315, 316, 355, 315, 316, 356, 315,
426
- 316, 357, 315, 316, 358, 315, 316, 359,
427
- 315, 316, 343, 315, 316, 360, 315, 316,
428
- 361, 315, 316, 362, 315, 316, 363, 315,
429
- 316, 364, 315, 316, 365, 315, 316, 359,
430
- 315, 316, 366, 315, 316, 367, 315, 316,
431
- 368, 315, 316, 369, 315, 316, 370, 315,
432
- 316, 371, 315, 316, 359, 315, 316, 372,
433
- 315, 316, 373, 315, 316, 374, 315, 316,
434
- 375, 315, 316, 376, 315, 316, 375, 315,
435
- 377, 316, 315, 378, 316, 315, 316, 375,
436
- 315, 316, 375, 315, 379, 316, 380, 315,
437
- 375, 316, 315, 316, 381, 315, 316, 382,
438
- 315, 316, 383, 315, 316, 384, 315, 316,
439
- 385, 315, 316, 359, 315, 386, 387, 386,
440
- 0, 390, 389, 391, 392, 389, 388, 0,
441
- 394, 395, 393, 0, 394, 393, 390, 396,
442
- 394, 395, 396, 393, 390, 397, 398, 399,
443
- 400, 401, 402, 403, 404, 405, 406, 407,
444
- 408, 409, 410, 411, 397, 0, 82, 412,
445
- 81, 82, 413, 81, 82, 414, 81, 82,
446
- 415, 81, 82, 416, 81, 82, 417, 81,
447
- 82, 418, 81, 82, 107, 81, 82, 419,
448
- 81, 82, 420, 81, 82, 421, 81, 82,
449
- 422, 81, 82, 423, 81, 82, 422, 81,
450
- 424, 82, 81, 425, 82, 81, 82, 422,
451
- 81, 82, 422, 81, 426, 82, 427, 81,
452
- 422, 82, 81, 82, 428, 81, 82, 429,
453
- 81, 82, 430, 81, 82, 431, 81, 82,
454
- 432, 81, 82, 418, 81, 433, 0, 1,
455
- 0, 434, 0
456
- ];
457
-
458
- const _lexer_trans_targs = [
459
- 0, 2, 2, 3, 12, 14, 28, 31,
460
- 34, 70, 138, 227, 231, 233, 236, 237,
461
- 313, 345, 4, 5, 6, 7, 7, 7,
462
- 8, 7, 7, 7, 8, 9, 10, 11,
463
- 2, 11, 12, 2, 13, 15, 16, 17,
464
- 18, 19, 20, 21, 22, 23, 24, 25,
465
- 26, 27, 347, 29, 30, 30, 2, 13,
466
- 32, 33, 2, 32, 31, 33, 35, 36,
467
- 37, 38, 39, 40, 41, 42, 43, 44,
468
- 45, 46, 47, 48, 49, 50, 51, 52,
469
- 53, 52, 53, 53, 2, 54, 68, 319,
470
- 327, 331, 333, 336, 337, 55, 56, 57,
471
- 58, 59, 60, 61, 62, 63, 64, 65,
472
- 66, 67, 2, 69, 2, 2, 3, 12,
473
- 14, 28, 31, 34, 70, 138, 227, 231,
474
- 233, 236, 237, 313, 71, 72, 73, 74,
475
- 75, 76, 77, 78, 79, 80, 79, 80,
476
- 80, 2, 81, 95, 96, 113, 120, 124,
477
- 126, 129, 130, 82, 83, 84, 85, 86,
478
- 87, 88, 89, 90, 91, 92, 93, 94,
479
- 2, 69, 97, 98, 99, 100, 101, 102,
480
- 103, 104, 105, 106, 107, 108, 109, 110,
481
- 111, 112, 114, 115, 116, 117, 118, 119,
482
- 121, 122, 123, 95, 125, 127, 128, 131,
483
- 132, 133, 134, 135, 136, 137, 139, 208,
484
- 140, 141, 142, 143, 144, 145, 146, 147,
485
- 148, 147, 148, 148, 2, 149, 163, 180,
486
- 187, 201, 150, 151, 152, 153, 154, 155,
487
- 156, 157, 158, 159, 160, 161, 162, 2,
488
- 164, 165, 166, 167, 168, 169, 170, 171,
489
- 172, 173, 174, 175, 176, 177, 178, 179,
490
- 69, 181, 182, 183, 184, 185, 186, 188,
491
- 194, 189, 190, 191, 192, 193, 195, 196,
492
- 197, 198, 199, 200, 202, 203, 204, 205,
493
- 206, 207, 209, 210, 211, 212, 213, 214,
494
- 215, 216, 217, 218, 217, 218, 218, 2,
495
- 219, 220, 221, 222, 223, 224, 225, 226,
496
- 69, 228, 229, 230, 28, 232, 234, 235,
497
- 238, 239, 240, 241, 242, 243, 244, 245,
498
- 246, 247, 248, 247, 248, 248, 2, 249,
499
- 263, 264, 281, 288, 295, 299, 301, 304,
500
- 305, 250, 251, 252, 253, 254, 255, 256,
501
- 257, 258, 259, 260, 261, 262, 2, 69,
502
- 265, 266, 267, 268, 269, 270, 271, 272,
503
- 273, 274, 275, 276, 277, 278, 279, 280,
504
- 282, 283, 284, 285, 286, 287, 289, 290,
505
- 291, 292, 293, 294, 296, 297, 298, 263,
506
- 300, 302, 303, 306, 307, 308, 309, 310,
507
- 311, 312, 313, 314, 315, 317, 318, 316,
508
- 314, 315, 316, 314, 317, 318, 3, 12,
509
- 14, 28, 31, 34, 70, 138, 227, 231,
510
- 233, 236, 237, 313, 320, 321, 322, 323,
511
- 324, 325, 326, 328, 329, 330, 68, 332,
512
- 334, 335, 338, 339, 340, 341, 342, 343,
513
- 344, 346, 0
514
- ];
515
-
516
- const _lexer_trans_actions = [
517
- 39, 0, 47, 3, 1, 0, 25, 1,
518
- 25, 25, 25, 25, 25, 25, 25, 25,
519
- 31, 0, 0, 0, 47, 5, 41, 119,
520
- 41, 0, 29, 111, 29, 29, 0, 7,
521
- 95, 0, 0, 103, 21, 0, 0, 0,
522
- 0, 0, 0, 0, 0, 0, 0, 0,
523
- 0, 0, 0, 0, 50, 0, 99, 19,
524
- 0, 23, 107, 23, 44, 0, 0, 0,
525
- 0, 0, 0, 0, 0, 0, 0, 0,
526
- 0, 0, 0, 0, 0, 0, 0, 50,
527
- 124, 0, 47, 0, 71, 29, 77, 77,
528
- 77, 77, 77, 77, 77, 0, 0, 0,
529
- 0, 0, 0, 0, 0, 0, 0, 0,
530
- 0, 0, 15, 15, 27, 115, 53, 50,
531
- 27, 56, 50, 56, 56, 56, 56, 56,
532
- 56, 56, 56, 59, 0, 0, 0, 0,
533
- 0, 0, 0, 0, 50, 124, 0, 47,
534
- 0, 65, 29, 77, 77, 77, 77, 77,
535
- 77, 77, 77, 0, 0, 0, 0, 0,
536
- 0, 0, 0, 0, 0, 0, 0, 0,
537
- 11, 11, 0, 0, 0, 0, 0, 0,
538
- 0, 0, 0, 0, 0, 0, 0, 0,
539
- 0, 0, 0, 0, 0, 0, 0, 0,
540
- 0, 0, 0, 0, 0, 0, 0, 0,
541
- 0, 0, 0, 0, 0, 0, 0, 0,
542
- 0, 0, 0, 0, 0, 0, 0, 50,
543
- 124, 0, 47, 0, 62, 29, 77, 77,
544
- 77, 77, 0, 0, 0, 0, 0, 0,
545
- 0, 0, 0, 0, 0, 0, 0, 9,
546
- 0, 0, 0, 0, 0, 0, 0, 0,
547
- 0, 0, 0, 0, 0, 0, 0, 0,
548
- 9, 0, 0, 0, 0, 0, 0, 0,
549
- 0, 0, 0, 0, 0, 0, 0, 0,
550
- 0, 0, 0, 0, 0, 0, 0, 0,
551
- 0, 0, 0, 0, 0, 0, 0, 0,
552
- 0, 0, 50, 124, 0, 47, 0, 74,
553
- 77, 0, 0, 0, 0, 0, 0, 0,
554
- 17, 0, 0, 0, 0, 0, 0, 0,
555
- 0, 0, 0, 0, 0, 0, 0, 0,
556
- 0, 50, 124, 0, 47, 0, 68, 29,
557
- 77, 77, 77, 77, 77, 77, 77, 77,
558
- 77, 0, 0, 0, 0, 0, 0, 0,
559
- 0, 0, 0, 0, 0, 0, 13, 13,
560
- 0, 0, 0, 0, 0, 0, 0, 0,
561
- 0, 0, 0, 0, 0, 0, 0, 0,
562
- 0, 0, 0, 0, 0, 0, 0, 0,
563
- 0, 0, 0, 0, 0, 0, 0, 0,
564
- 0, 0, 0, 0, 0, 0, 0, 0,
565
- 0, 0, 0, 0, 33, 33, 47, 33,
566
- 80, 0, 0, 35, 0, 0, 86, 83,
567
- 37, 89, 83, 89, 89, 89, 89, 89,
568
- 89, 89, 89, 92, 0, 0, 0, 0,
569
- 0, 0, 0, 0, 0, 0, 0, 0,
570
- 0, 0, 0, 0, 0, 0, 0, 0,
571
- 0, 0, 0
572
- ];
573
-
574
- const _lexer_eof_actions = [
575
- 0, 39, 39, 39, 39, 39, 39, 39,
576
- 39, 39, 39, 39, 39, 39, 39, 39,
577
- 39, 39, 39, 39, 39, 39, 39, 39,
578
- 39, 39, 39, 39, 39, 39, 39, 39,
579
- 39, 39, 39, 39, 39, 39, 39, 39,
580
- 39, 39, 39, 39, 39, 39, 39, 39,
581
- 39, 39, 39, 39, 39, 39, 39, 39,
582
- 39, 39, 39, 39, 39, 39, 39, 39,
583
- 39, 39, 39, 39, 39, 39, 39, 39,
584
- 39, 39, 39, 39, 39, 39, 39, 39,
585
- 39, 39, 39, 39, 39, 39, 39, 39,
586
- 39, 39, 39, 39, 39, 39, 39, 39,
587
- 39, 39, 39, 39, 39, 39, 39, 39,
588
- 39, 39, 39, 39, 39, 39, 39, 39,
589
- 39, 39, 39, 39, 39, 39, 39, 39,
590
- 39, 39, 39, 39, 39, 39, 39, 39,
591
- 39, 39, 39, 39, 39, 39, 39, 39,
592
- 39, 39, 39, 39, 39, 39, 39, 39,
593
- 39, 39, 39, 39, 39, 39, 39, 39,
594
- 39, 39, 39, 39, 39, 39, 39, 39,
595
- 39, 39, 39, 39, 39, 39, 39, 39,
596
- 39, 39, 39, 39, 39, 39, 39, 39,
597
- 39, 39, 39, 39, 39, 39, 39, 39,
598
- 39, 39, 39, 39, 39, 39, 39, 39,
599
- 39, 39, 39, 39, 39, 39, 39, 39,
600
- 39, 39, 39, 39, 39, 39, 39, 39,
601
- 39, 39, 39, 39, 39, 39, 39, 39,
602
- 39, 39, 39, 39, 39, 39, 39, 39,
603
- 39, 39, 39, 39, 39, 39, 39, 39,
604
- 39, 39, 39, 39, 39, 39, 39, 39,
605
- 39, 39, 39, 39, 39, 39, 39, 39,
606
- 39, 39, 39, 39, 39, 39, 39, 39,
607
- 39, 39, 39, 39, 39, 39, 39, 39,
608
- 39, 39, 39, 39, 39, 39, 39, 39,
609
- 39, 39, 39, 39, 39, 39, 39, 39,
610
- 39, 39, 39, 39, 39, 39, 39, 39,
611
- 39, 39, 39, 39, 39, 39, 39, 39,
612
- 39, 39, 39, 39, 39, 39, 39, 39,
613
- 39, 39, 39, 39, 39, 39, 39, 39,
614
- 39, 39, 39, 39, 39, 39, 39, 39,
615
- 39, 39, 39, 39, 39, 39, 39, 39,
616
- 39, 39, 39, 39, 39, 39, 39, 39,
617
- 39, 39, 39, 39, 39, 39, 39, 39,
618
- 39, 39, 39, 39
619
- ];
620
-
621
- const lexer_start = 1;
622
- const lexer_first_final = 347;
623
- const lexer_error = 0;
624
-
625
- const lexer_en_main = 1;
626
-
627
-
628
- /* line 110 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
629
-
630
- /* line 111 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
631
-
632
- /* line 112 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
633
-
634
- var Lexer = function(listeners) {
635
- // check that we have an 'on' method (for registering event listeners - Node has that)
636
- // If not, make a trivial implementation that can register one listener. -Enough for testing.
637
-
638
- if(!this.on) {
639
- this._listeners = {};
640
-
641
- this.on = function(event, cb) {
642
- this._listeners[event] = cb;
643
- };
644
-
645
- this.emit = function() {
646
- var event = arguments[0];
647
- var args = [];
648
- for(var i = 1; i < arguments.length; i++) {
649
- args.push(arguments[i]);
650
- }
651
- var cb = this._listeners[event];
652
- cb.apply(listeners, args);
653
- };
654
- }
655
-
656
- var events = ['feature', 'background', 'scenario', 'scenario_outline', 'examples', 'step', 'py_string', 'row', 'end'];
657
- for(e in events) {
658
- var event = events[e];
659
- var listener = listeners[event];
660
- // if(!listener) {
661
- // throw "No listener for " + event;
662
- // }
663
- this.on(event, listener);
664
- }
665
-
666
-
667
- /* line 668 "js/lib/gherkin/lexer/i18n/da.js" */
668
- {
669
- this.cs = lexer_start;
670
- } /* JSCodeGen::writeInit */
671
-
672
- /* line 146 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
673
- };
674
-
675
- if(typeof require == 'function') {
676
- require('sys').inherits(Lexer, require('events').EventEmitter);
677
- }
678
-
679
- Lexer.prototype.scan = function(data) {
680
- var p = 0;
681
- var pe = data.length;
682
- var eof = 0;
683
-
684
-
685
- /* line 686 "js/lib/gherkin/lexer/i18n/da.js" */
686
- {
687
- var _klen, _trans, _keys, _ps, _widec, _acts, _nacts;
688
- var _goto_level, _resume, _eof_trans, _again, _test_eof;
689
- var _out;
690
- _klen = _trans = _keys = _acts = _nacts = null;
691
- _goto_level = 0;
692
- _resume = 10;
693
- _eof_trans = 15;
694
- _again = 20;
695
- _test_eof = 30;
696
- _out = 40;
697
- while (true) {
698
- _trigger_goto = false;
699
- if (_goto_level <= 0) {
700
- if (p == pe) {
701
- _goto_level = _test_eof;
702
- continue;
703
- }
704
- if ( this.cs == 0) {
705
- _goto_level = _out;
706
- continue;
707
- }
708
- }
709
- if (_goto_level <= _resume) {
710
- _keys = _lexer_key_offsets[ this.cs];
711
- _trans = _lexer_index_offsets[ this.cs];
712
- _klen = _lexer_single_lengths[ this.cs];
713
- _break_match = false;
714
-
715
- do {
716
- if (_klen > 0) {
717
- _lower = _keys;
718
- _upper = _keys + _klen - 1;
719
-
720
- while (true) {
721
- if (_upper < _lower) { break; }
722
- _mid = _lower + ( (_upper - _lower) >> 1 );
723
-
724
- if ( data[p] < _lexer_trans_keys[_mid]) {
725
- _upper = _mid - 1;
726
- } else if ( data[p] > _lexer_trans_keys[_mid]) {
727
- _lower = _mid + 1;
728
- } else {
729
- _trans += (_mid - _keys);
730
- _break_match = true;
731
- break;
732
- };
733
- } /* while */
734
- if (_break_match) { break; }
735
- _keys += _klen;
736
- _trans += _klen;
737
- }
738
- _klen = _lexer_range_lengths[ this.cs];
739
- if (_klen > 0) {
740
- _lower = _keys;
741
- _upper = _keys + (_klen << 1) - 2;
742
- while (true) {
743
- if (_upper < _lower) { break; }
744
- _mid = _lower + (((_upper-_lower) >> 1) & ~1);
745
- if ( data[p] < _lexer_trans_keys[_mid]) {
746
- _upper = _mid - 2;
747
- } else if ( data[p] > _lexer_trans_keys[_mid+1]) {
748
- _lower = _mid + 2;
749
- } else {
750
- _trans += ((_mid - _keys) >> 1);
751
- _break_match = true;
752
- break;
753
- }
754
- } /* while */
755
- if (_break_match) { break; }
756
- _trans += _klen
757
- }
758
- } while (false);
759
- _trans = _lexer_indicies[_trans];
760
- this.cs = _lexer_trans_targs[_trans];
761
- if (_lexer_trans_actions[_trans] != 0) {
762
- _acts = _lexer_trans_actions[_trans];
763
- _nacts = _lexer_actions[_acts];
764
- _acts += 1;
765
- while (_nacts > 0) {
766
- _nacts -= 1;
767
- _acts += 1;
768
- switch (_lexer_actions[_acts - 1]) {
769
- case 0:
770
- /* line 6 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
771
-
772
- this.content_start = p;
773
- this.current_line = this.line_number;
774
- this.start_col = p - this.last_newline - (this.keyword+':').length;
775
- break;
776
- case 1:
777
- /* line 12 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
778
-
779
- this.current_line = this.line_number;
780
- this.start_col = p - this.last_newline;
781
- break;
782
- case 2:
783
- /* line 17 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
784
-
785
- this.content_start = p;
786
- break;
787
- case 3:
788
- /* line 21 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
789
-
790
- var con = this.unindent(
791
- this.start_col,
792
- this.bytesToString(data.slice(this.content_start, this.next_keyword_start-1)).replace(/(\r?\n)?([\t ])*\Z/, '') // TODO .replace(/\"\"\"/mg, '"""')
793
- );
794
- this.emit('py_string', con, this.current_line);
795
- break;
796
- case 4:
797
- /* line 29 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
798
-
799
- p = this.store_keyword_content('feature', data, p, eof);
800
- break;
801
- case 5:
802
- /* line 33 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
803
-
804
- p = this.store_keyword_content('background', data, p, eof);
805
- break;
806
- case 6:
807
- /* line 37 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
808
-
809
- p = this.store_keyword_content('scenario', data, p, eof);
810
- break;
811
- case 7:
812
- /* line 41 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
813
-
814
- p = this.store_keyword_content('scenario_outline', data, p, eof);
815
- break;
816
- case 8:
817
- /* line 45 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
818
-
819
- p = this.store_keyword_content('examples', data, p, eof);
820
- break;
821
- case 9:
822
- /* line 49 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
823
-
824
- var con = this.bytesToString(data.slice(this.content_start, p)).trim();
825
- this.emit('step', this.keyword, con, this.current_line);
826
- break;
827
- case 10:
828
- /* line 54 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
829
-
830
- console.log('TODO: store_comment_content');
831
- break;
832
- case 11:
833
- /* line 58 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
834
-
835
- console.log('TODO: store_tag_content');
836
- break;
837
- case 12:
838
- /* line 62 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
839
-
840
- this.line_number++;
841
- break;
842
- case 13:
843
- /* line 66 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
844
-
845
- this.last_newline = p + 1;
846
- break;
847
- case 14:
848
- /* line 70 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
849
-
850
- this.keyword_start = this.keyword_start || p;
851
- break;
852
- case 15:
853
- /* line 74 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
854
-
855
- this.keyword = this.bytesToString(data.slice(this.keyword_start, p)).replace(/:$/, '');
856
- this.keyword_start = null;
857
- break;
858
- case 16:
859
- /* line 79 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
860
-
861
- this.next_keyword_start = p;
862
- break;
863
- case 17:
864
- /* line 83 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
865
-
866
- p = p - 1;
867
- current_row = [];
868
- this.current_line = this.line_number;
869
- break;
870
- case 18:
871
- /* line 89 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
872
-
873
- this.content_start = p;
874
- break;
875
- case 19:
876
- /* line 93 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
877
-
878
- var con = this.bytesToString(data.slice(this.content_start, p)).trim();
879
- current_row.push(con.replace(/\\\|/, "|").replace(/\\n/, "\n").replace(/\\\\/, "\\"));
880
- break;
881
- case 20:
882
- /* line 98 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
883
-
884
- this.emit('row', current_row, this.current_line);
885
- break;
886
- case 21:
887
- /* line 102 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
888
-
889
- console.log('TODO: end_feature');
890
- break;
891
- /* line 892 "js/lib/gherkin/lexer/i18n/da.js" */
892
- } /* action switch */
893
- }
894
- }
895
- if (_trigger_goto) {
896
- continue;
897
- }
898
- }
899
- if (_goto_level <= _again) {
900
- if ( this.cs == 0) {
901
- _goto_level = _out;
902
- continue;
903
- }
904
- p += 1;
905
- if (p != pe) {
906
- _goto_level = _resume;
907
- continue;
908
- }
909
- }
910
- if (_goto_level <= _test_eof) {
911
- if (p == eof) {
912
- __acts = _lexer_eof_actions[ this.cs];
913
- __nacts = _lexer_actions[__acts];
914
- __acts += 1;
915
- while (__nacts > 0) {
916
- __nacts -= 1;
917
- __acts += 1;
918
- switch (_lexer_actions[__acts - 1]) {
919
- case 21:
920
- /* line 102 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
921
-
922
- console.log('TODO: end_feature');
923
- break;
924
- /* line 925 "js/lib/gherkin/lexer/i18n/da.js" */
925
- } /* eof action switch */
926
- }
927
- if (_trigger_goto) {
928
- continue;
929
- }
930
- }
931
- }
932
- if (_goto_level <= _out) {
933
- break;
934
- }
935
- }
936
- }
937
-
938
- /* line 158 "/Users/ahellesoy/scm/gherkin/tasks/../ragel/i18n/da.js.rl" */
939
- };
940
-
941
- Lexer.prototype.bytesToString = function(bytes) {
942
- if(typeof bytes.write == 'function') {
943
- // Node.js
944
- return bytes.toString('utf-8');
945
- } else {
946
- var result = "";
947
- for(var b in bytes) {
948
- result += String.fromCharCode(bytes[b]);
949
- }
950
- return result;
951
- }
952
- }
953
-
954
- Lexer.prototype.unindent = function(startcol, text) {
955
- startcol = startcol || 0;
956
- return text.replace(new RegExp('^[\t ]{0,' + startcol + '}', 'gm'), '');
957
- };
958
-
959
- Lexer.prototype.store_keyword_content = function(event, data, p, eof) {
960
- var end_point = (!this.next_keyword_start || (p == eof)) ? p : this.next_keyword_start;
961
- var content = this.unindent(this.start_col + 2, this.bytesToString(data.slice(this.content_start, end_point))).trimRight();
962
- var content_lines = content.split("\n")
963
- var name = content_lines.shift() || "";
964
- name = name.trim();
965
- var description = content_lines.join("\n");
966
- this.emit(event, this.keyword, name, description, this.current_line);
967
- var nks = this.next_keyword_start;
968
- this.next_keyword_start = null;
969
- return nks ? nks - 1 : p;
970
- };
971
-
972
- exports.Lexer = Lexer;
973
-
974
- })();