gherkin 2.3.5-x86-mswin32 → 2.3.6-x86-mswin32

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