gherkin 2.12.1 → 2.12.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 (87) hide show
  1. checksums.yaml +4 -4
  2. data/.ruby-version +1 -1
  3. data/History.md +11 -0
  4. data/README.md +1 -1
  5. data/ext/gherkin_lexer_el/gherkin_lexer_el.c +642 -700
  6. data/ext/gherkin_lexer_kn/extconf.rb +6 -0
  7. data/ext/gherkin_lexer_kn/gherkin_lexer_kn.c +1965 -0
  8. data/gherkin.gemspec +5 -5
  9. data/lib/gherkin/formatter/filter_formatter.rb +5 -1
  10. data/lib/gherkin/formatter/pretty_formatter.rb +3 -2
  11. data/lib/gherkin/i18n.json +15 -1
  12. data/lib/gherkin/lexer/ar.rb +1074 -1071
  13. data/lib/gherkin/lexer/bg.rb +1286 -1283
  14. data/lib/gherkin/lexer/bm.rb +1154 -1151
  15. data/lib/gherkin/lexer/ca.rb +1214 -1211
  16. data/lib/gherkin/lexer/cs.rb +1150 -1147
  17. data/lib/gherkin/lexer/cy_gb.rb +936 -933
  18. data/lib/gherkin/lexer/da.rb +952 -949
  19. data/lib/gherkin/lexer/de.rb +1070 -1067
  20. data/lib/gherkin/lexer/el.rb +1532 -1581
  21. data/lib/gherkin/lexer/en.rb +1060 -1057
  22. data/lib/gherkin/lexer/en_au.rb +1390 -1387
  23. data/lib/gherkin/lexer/en_lol.rb +876 -873
  24. data/lib/gherkin/lexer/en_old.rb +941 -938
  25. data/lib/gherkin/lexer/en_pirate.rb +1114 -1111
  26. data/lib/gherkin/lexer/en_scouse.rb +1266 -1263
  27. data/lib/gherkin/lexer/en_tx.rb +958 -955
  28. data/lib/gherkin/lexer/eo.rb +937 -934
  29. data/lib/gherkin/lexer/es.rb +1044 -1041
  30. data/lib/gherkin/lexer/et.rb +932 -929
  31. data/lib/gherkin/lexer/fa.rb +1118 -1115
  32. data/lib/gherkin/lexer/fi.rb +911 -908
  33. data/lib/gherkin/lexer/fr.rb +1132 -1129
  34. data/lib/gherkin/lexer/gl.rb +1021 -1018
  35. data/lib/gherkin/lexer/he.rb +1022 -1019
  36. data/lib/gherkin/lexer/hi.rb +1463 -1460
  37. data/lib/gherkin/lexer/hr.rb +970 -967
  38. data/lib/gherkin/lexer/hu.rb +1022 -1019
  39. data/lib/gherkin/lexer/id.rb +905 -902
  40. data/lib/gherkin/lexer/is.rb +1024 -1021
  41. data/lib/gherkin/lexer/it.rb +990 -987
  42. data/lib/gherkin/lexer/ja.rb +1322 -1319
  43. data/lib/gherkin/lexer/kn.rb +1672 -0
  44. data/lib/gherkin/lexer/ko.rb +1006 -1003
  45. data/lib/gherkin/lexer/lt.rb +949 -946
  46. data/lib/gherkin/lexer/lu.rb +1036 -1033
  47. data/lib/gherkin/lexer/lv.rb +1070 -1067
  48. data/lib/gherkin/lexer/nl.rb +1019 -1016
  49. data/lib/gherkin/lexer/no.rb +964 -961
  50. data/lib/gherkin/lexer/pa.rb +1756 -1753
  51. data/lib/gherkin/lexer/pl.rb +1361 -1358
  52. data/lib/gherkin/lexer/pt.rb +1334 -1331
  53. data/lib/gherkin/lexer/ro.rb +1068 -1065
  54. data/lib/gherkin/lexer/ru.rb +1670 -1667
  55. data/lib/gherkin/lexer/sk.rb +1356 -1353
  56. data/lib/gherkin/lexer/sr_cyrl.rb +1707 -1704
  57. data/lib/gherkin/lexer/sr_latn.rb +1198 -1195
  58. data/lib/gherkin/lexer/sv.rb +974 -971
  59. data/lib/gherkin/lexer/th.rb +2396 -2393
  60. data/lib/gherkin/lexer/tl.rb +1630 -1627
  61. data/lib/gherkin/lexer/tr.rb +996 -993
  62. data/lib/gherkin/lexer/tt.rb +1547 -1544
  63. data/lib/gherkin/lexer/uk.rb +1550 -1547
  64. data/lib/gherkin/lexer/uz.rb +1280 -1277
  65. data/lib/gherkin/lexer/vi.rb +1102 -1099
  66. data/lib/gherkin/lexer/zh_cn.rb +962 -959
  67. data/lib/gherkin/lexer/zh_tw.rb +956 -953
  68. data/lib/gherkin/listener/formatter_listener.rb +13 -6
  69. data/lib/gherkin/platform.rb +2 -2
  70. data/lib/gherkin/tag_expression.rb +1 -0
  71. data/ragel/lexer.js.rl.erb +109 -14
  72. data/ragel/lexer.rb.rl.erb +3 -0
  73. data/spec/gherkin/i18n_spec.rb +1 -0
  74. data/spec/gherkin/json_parser_spec.rb +10 -22
  75. data/spec/gherkin/lexer/i18n_lexer_spec.rb +7 -3
  76. data/spec/gherkin/parser/parser_spec.rb +1 -1
  77. data/spec/gherkin/rubify_spec.rb +1 -1
  78. data/spec/gherkin/shared/doc_string_group.rb +0 -2
  79. data/spec/gherkin/shared/encoding_group.rb +0 -2
  80. data/spec/gherkin/shared/lexer_group.rb +0 -2
  81. data/spec/gherkin/shared/row_group.rb +0 -2
  82. data/spec/gherkin/shared/tags_group.rb +0 -2
  83. data/spec/spec_helper.rb +21 -7
  84. data/tasks/ikvm.rake +2 -2
  85. data/tasks/ragel_task.rb +8 -0
  86. data/tasks/rspec.rake +1 -1
  87. metadata +25 -21
@@ -7,892 +7,895 @@ module Gherkin
7
7
  class En_lol #:nodoc:
8
8
  native_impl('gherkin')
9
9
 
10
-
11
- # line 125 "ragel/i18n/en_lol.rb.rl"
12
10
 
13
-
11
+ # line 125 "ragel/i18n/en_lol.rb.rl"
12
+
13
+
14
14
  def initialize(listener)
15
15
  @listener = listener
16
-
17
- # line 18 "lib/gherkin/lexer/en_lol.rb"
18
- class << self
19
- attr_accessor :_lexer_actions
20
- private :_lexer_actions, :_lexer_actions=
21
- end
22
- self._lexer_actions = [
23
- 0, 1, 0, 1, 1, 1, 2, 1,
24
- 3, 1, 4, 1, 5, 1, 6, 1,
25
- 7, 1, 8, 1, 9, 1, 10, 1,
26
- 11, 1, 12, 1, 13, 1, 16, 1,
27
- 17, 1, 18, 1, 19, 1, 20, 1,
28
- 21, 1, 22, 1, 23, 2, 2, 18,
29
- 2, 3, 4, 2, 13, 0, 2, 14,
30
- 15, 2, 17, 0, 2, 17, 1, 2,
31
- 17, 16, 2, 17, 19, 2, 18, 6,
32
- 2, 18, 7, 2, 18, 8, 2, 18,
33
- 9, 2, 18, 10, 2, 18, 16, 2,
34
- 20, 21, 2, 22, 0, 2, 22, 1,
35
- 2, 22, 16, 2, 22, 19, 3, 4,
36
- 14, 15, 3, 5, 14, 15, 3, 11,
37
- 14, 15, 3, 12, 14, 15, 3, 13,
38
- 14, 15, 3, 14, 15, 18, 3, 17,
39
- 0, 11, 3, 17, 14, 15, 4, 2,
40
- 14, 15, 18, 4, 3, 4, 14, 15,
41
- 4, 17, 0, 14, 15, 5, 17, 0,
42
- 11, 14, 15
43
- ]
44
-
45
- class << self
46
- attr_accessor :_lexer_key_offsets
47
- private :_lexer_key_offsets, :_lexer_key_offsets=
48
- end
49
- self._lexer_key_offsets = [
50
- 0, 0, 19, 20, 21, 39, 40, 41,
51
- 43, 45, 50, 55, 60, 65, 69, 73,
52
- 75, 76, 77, 78, 79, 80, 81, 82,
53
- 83, 84, 85, 86, 87, 88, 89, 90,
54
- 91, 93, 95, 100, 107, 112, 113, 115,
55
- 116, 117, 118, 133, 135, 137, 139, 141,
56
- 143, 145, 147, 149, 151, 153, 155, 157,
57
- 159, 161, 163, 181, 182, 183, 184, 185,
58
- 186, 187, 188, 189, 190, 191, 198, 200,
59
- 202, 204, 206, 208, 210, 211, 212, 213,
60
- 214, 215, 216, 217, 218, 219, 220, 221,
61
- 222, 223, 225, 226, 227, 228, 229, 230,
62
- 231, 232, 233, 248, 250, 252, 254, 256,
63
- 258, 260, 262, 264, 266, 268, 270, 272,
64
- 274, 276, 278, 280, 282, 284, 286, 288,
65
- 290, 292, 294, 296, 298, 300, 302, 304,
66
- 306, 308, 310, 312, 314, 316, 318, 320,
67
- 322, 324, 325, 326, 341, 343, 345, 347,
68
- 349, 351, 353, 355, 357, 359, 361, 363,
69
- 365, 367, 369, 371, 373, 376, 378, 380,
70
- 382, 384, 386, 388, 390, 392, 394, 396,
71
- 398, 400, 402, 404, 406, 408, 411, 413,
72
- 415, 417, 419, 421, 423, 425, 427, 429,
73
- 431, 432, 433, 434, 435, 436, 437, 438,
74
- 439, 450, 452, 454, 456, 458, 460, 462,
75
- 464, 466, 468, 470, 472, 474, 476, 478,
76
- 480, 482, 484, 486, 488, 490, 492, 494,
77
- 496, 498, 500, 502, 504, 507, 509, 511,
78
- 513, 515, 517, 519, 521, 523, 525, 527,
79
- 531, 537, 540, 542, 548, 566, 568, 570,
80
- 572, 574, 576, 578, 580, 582, 584, 586,
81
- 588, 590, 592, 594, 596, 598, 600, 603,
82
- 605, 607, 609, 611, 613, 615, 617, 619,
83
- 621, 623, 625, 626
84
- ]
85
-
86
- class << self
87
- attr_accessor :_lexer_trans_keys
88
- private :_lexer_trans_keys, :_lexer_trans_keys=
89
- end
90
- self._lexer_trans_keys = [
91
- -17, 10, 32, 34, 35, 37, 42, 64,
92
- 65, 66, 68, 69, 73, 77, 79, 87,
93
- 124, 9, 13, -69, -65, 10, 32, 34,
94
- 35, 37, 42, 64, 65, 66, 68, 69,
95
- 73, 77, 79, 87, 124, 9, 13, 34,
96
- 34, 10, 13, 10, 13, 10, 32, 34,
97
- 9, 13, 10, 32, 34, 9, 13, 10,
98
- 32, 34, 9, 13, 10, 32, 34, 9,
99
- 13, 10, 32, 9, 13, 10, 32, 9,
100
- 13, 10, 13, 10, 95, 70, 69, 65,
101
- 84, 85, 82, 69, 95, 69, 78, 68,
102
- 95, 37, 32, 10, 13, 10, 13, 13,
103
- 32, 64, 9, 10, 9, 10, 13, 32,
104
- 64, 11, 12, 10, 32, 64, 9, 13,
105
- 78, 52, 85, 58, 10, 10, 10, 32,
106
- 35, 37, 42, 64, 65, 66, 68, 73,
107
- 77, 79, 87, 9, 13, 10, 95, 10,
108
- 70, 10, 69, 10, 65, 10, 84, 10,
109
- 85, 10, 82, 10, 69, 10, 95, 10,
110
- 69, 10, 78, 10, 68, 10, 95, 10,
111
- 37, 10, 32, 10, 32, 34, 35, 37,
112
- 42, 64, 65, 66, 68, 69, 73, 77,
113
- 79, 87, 124, 9, 13, 69, 88, 65,
114
- 77, 80, 76, 90, 58, 10, 10, 10,
115
- 32, 35, 79, 124, 9, 13, 10, 72,
116
- 10, 32, 10, 72, 10, 65, 10, 73,
117
- 10, 58, 32, 67, 65, 78, 32, 72,
118
- 65, 90, 73, 83, 72, 85, 78, 32,
119
- 58, 83, 82, 83, 76, 89, 58, 10,
120
- 10, 10, 32, 35, 37, 42, 64, 65,
121
- 66, 68, 73, 77, 79, 87, 9, 13,
122
- 10, 95, 10, 70, 10, 69, 10, 65,
123
- 10, 84, 10, 85, 10, 82, 10, 69,
124
- 10, 95, 10, 69, 10, 78, 10, 68,
125
- 10, 95, 10, 37, 10, 32, 10, 78,
126
- 10, 85, 10, 84, 10, 69, 10, 32,
127
- 10, 67, 10, 65, 10, 78, 10, 32,
128
- 10, 72, 10, 65, 10, 90, 10, 73,
129
- 10, 83, 10, 72, 10, 85, 10, 78,
130
- 10, 58, 10, 72, 10, 32, 10, 72,
131
- 10, 65, 10, 73, 10, 10, 10, 32,
132
- 35, 37, 42, 64, 65, 66, 68, 73,
133
- 77, 79, 87, 9, 13, 10, 95, 10,
134
- 70, 10, 69, 10, 65, 10, 84, 10,
135
- 85, 10, 82, 10, 69, 10, 95, 10,
136
- 69, 10, 78, 10, 68, 10, 95, 10,
137
- 37, 10, 32, 10, 78, 10, 52, 85,
138
- 10, 58, 10, 84, 10, 69, 10, 32,
139
- 10, 67, 10, 65, 10, 78, 10, 32,
140
- 10, 72, 10, 65, 10, 90, 10, 73,
141
- 10, 83, 10, 72, 10, 85, 10, 78,
142
- 10, 32, 58, 10, 83, 10, 82, 10,
143
- 83, 10, 76, 10, 89, 10, 72, 10,
144
- 32, 10, 72, 10, 65, 10, 73, 72,
145
- 32, 72, 65, 73, 58, 10, 10, 10,
146
- 32, 35, 37, 64, 66, 69, 77, 79,
147
- 9, 13, 10, 95, 10, 70, 10, 69,
148
- 10, 65, 10, 84, 10, 85, 10, 82,
149
- 10, 69, 10, 95, 10, 69, 10, 78,
150
- 10, 68, 10, 95, 10, 37, 10, 52,
151
- 10, 58, 10, 88, 10, 65, 10, 77,
152
- 10, 80, 10, 76, 10, 90, 10, 73,
153
- 10, 83, 10, 72, 10, 85, 10, 78,
154
- 10, 32, 58, 10, 83, 10, 82, 10,
155
- 83, 10, 76, 10, 89, 10, 72, 10,
156
- 32, 10, 72, 10, 65, 10, 73, 32,
157
- 124, 9, 13, 10, 32, 92, 124, 9,
158
- 13, 10, 92, 124, 10, 92, 10, 32,
159
- 92, 124, 9, 13, 10, 32, 34, 35,
160
- 37, 42, 64, 65, 66, 68, 69, 73,
161
- 77, 79, 87, 124, 9, 13, 10, 78,
162
- 10, 85, 10, 84, 10, 69, 10, 32,
163
- 10, 67, 10, 65, 10, 78, 10, 32,
164
- 10, 72, 10, 65, 10, 90, 10, 73,
165
- 10, 83, 10, 72, 10, 85, 10, 78,
166
- 10, 32, 58, 10, 83, 10, 82, 10,
167
- 83, 10, 76, 10, 89, 10, 58, 10,
168
- 72, 10, 32, 10, 72, 10, 65, 10,
169
- 73, 84, 0
170
- ]
171
-
172
- class << self
173
- attr_accessor :_lexer_single_lengths
174
- private :_lexer_single_lengths, :_lexer_single_lengths=
175
- end
176
- self._lexer_single_lengths = [
177
- 0, 17, 1, 1, 16, 1, 1, 2,
178
- 2, 3, 3, 3, 3, 2, 2, 2,
179
- 1, 1, 1, 1, 1, 1, 1, 1,
180
- 1, 1, 1, 1, 1, 1, 1, 1,
181
- 2, 2, 3, 5, 3, 1, 2, 1,
182
- 1, 1, 13, 2, 2, 2, 2, 2,
183
- 2, 2, 2, 2, 2, 2, 2, 2,
184
- 2, 2, 16, 1, 1, 1, 1, 1,
185
- 1, 1, 1, 1, 1, 5, 2, 2,
186
- 2, 2, 2, 2, 1, 1, 1, 1,
187
- 1, 1, 1, 1, 1, 1, 1, 1,
188
- 1, 2, 1, 1, 1, 1, 1, 1,
189
- 1, 1, 13, 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, 1, 1, 13, 2, 2, 2, 2,
195
- 2, 2, 2, 2, 2, 2, 2, 2,
196
- 2, 2, 2, 2, 3, 2, 2, 2,
197
- 2, 2, 2, 2, 2, 2, 2, 2,
198
- 2, 2, 2, 2, 2, 3, 2, 2,
199
- 2, 2, 2, 2, 2, 2, 2, 2,
200
- 1, 1, 1, 1, 1, 1, 1, 1,
201
- 9, 2, 2, 2, 2, 2, 2, 2,
202
- 2, 2, 2, 2, 2, 2, 2, 2,
203
- 2, 2, 2, 2, 2, 2, 2, 2,
204
- 2, 2, 2, 2, 3, 2, 2, 2,
205
- 2, 2, 2, 2, 2, 2, 2, 2,
206
- 4, 3, 2, 4, 16, 2, 2, 2,
207
- 2, 2, 2, 2, 2, 2, 2, 2,
208
- 2, 2, 2, 2, 2, 2, 3, 2,
209
- 2, 2, 2, 2, 2, 2, 2, 2,
210
- 2, 2, 1, 0
211
- ]
212
-
213
- class << self
214
- attr_accessor :_lexer_range_lengths
215
- private :_lexer_range_lengths, :_lexer_range_lengths=
216
- end
217
- self._lexer_range_lengths = [
218
- 0, 1, 0, 0, 1, 0, 0, 0,
219
- 0, 1, 1, 1, 1, 1, 1, 0,
220
- 0, 0, 0, 0, 0, 0, 0, 0,
221
- 0, 0, 0, 0, 0, 0, 0, 0,
222
- 0, 0, 1, 1, 1, 0, 0, 0,
223
- 0, 0, 1, 0, 0, 0, 0, 0,
224
- 0, 0, 0, 0, 0, 0, 0, 0,
225
- 0, 0, 1, 0, 0, 0, 0, 0,
226
- 0, 0, 0, 0, 0, 1, 0, 0,
227
- 0, 0, 0, 0, 0, 0, 0, 0,
228
- 0, 0, 0, 0, 0, 0, 0, 0,
229
- 0, 0, 0, 0, 0, 0, 0, 0,
230
- 0, 0, 1, 0, 0, 0, 0, 0,
231
- 0, 0, 0, 0, 0, 0, 0, 0,
232
- 0, 0, 0, 0, 0, 0, 0, 0,
233
- 0, 0, 0, 0, 0, 0, 0, 0,
234
- 0, 0, 0, 0, 0, 0, 0, 0,
235
- 0, 0, 0, 1, 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
- 1, 0, 0, 0, 0, 0, 0, 0,
243
- 0, 0, 0, 0, 0, 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, 1,
247
- 1, 0, 0, 1, 1, 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
252
- ]
253
-
254
- class << self
255
- attr_accessor :_lexer_index_offsets
256
- private :_lexer_index_offsets, :_lexer_index_offsets=
257
- end
258
- self._lexer_index_offsets = [
259
- 0, 0, 19, 21, 23, 41, 43, 45,
260
- 48, 51, 56, 61, 66, 71, 75, 79,
261
- 82, 84, 86, 88, 90, 92, 94, 96,
262
- 98, 100, 102, 104, 106, 108, 110, 112,
263
- 114, 117, 120, 125, 132, 137, 139, 142,
264
- 144, 146, 148, 163, 166, 169, 172, 175,
265
- 178, 181, 184, 187, 190, 193, 196, 199,
266
- 202, 205, 208, 226, 228, 230, 232, 234,
267
- 236, 238, 240, 242, 244, 246, 253, 256,
268
- 259, 262, 265, 268, 271, 273, 275, 277,
269
- 279, 281, 283, 285, 287, 289, 291, 293,
270
- 295, 297, 300, 302, 304, 306, 308, 310,
271
- 312, 314, 316, 331, 334, 337, 340, 343,
272
- 346, 349, 352, 355, 358, 361, 364, 367,
273
- 370, 373, 376, 379, 382, 385, 388, 391,
274
- 394, 397, 400, 403, 406, 409, 412, 415,
275
- 418, 421, 424, 427, 430, 433, 436, 439,
276
- 442, 445, 447, 449, 464, 467, 470, 473,
277
- 476, 479, 482, 485, 488, 491, 494, 497,
278
- 500, 503, 506, 509, 512, 516, 519, 522,
279
- 525, 528, 531, 534, 537, 540, 543, 546,
280
- 549, 552, 555, 558, 561, 564, 568, 571,
281
- 574, 577, 580, 583, 586, 589, 592, 595,
282
- 598, 600, 602, 604, 606, 608, 610, 612,
283
- 614, 625, 628, 631, 634, 637, 640, 643,
284
- 646, 649, 652, 655, 658, 661, 664, 667,
285
- 670, 673, 676, 679, 682, 685, 688, 691,
286
- 694, 697, 700, 703, 706, 710, 713, 716,
287
- 719, 722, 725, 728, 731, 734, 737, 740,
288
- 744, 750, 754, 757, 763, 781, 784, 787,
289
- 790, 793, 796, 799, 802, 805, 808, 811,
290
- 814, 817, 820, 823, 826, 829, 832, 836,
291
- 839, 842, 845, 848, 851, 854, 857, 860,
292
- 863, 866, 869, 871
293
- ]
294
-
295
- class << self
296
- attr_accessor :_lexer_indicies
297
- private :_lexer_indicies, :_lexer_indicies=
298
- end
299
- self._lexer_indicies = [
300
- 1, 3, 2, 4, 5, 6, 7, 8,
301
- 9, 10, 11, 12, 13, 14, 15, 11,
302
- 16, 2, 0, 17, 0, 2, 0, 3,
303
- 2, 4, 5, 6, 7, 8, 9, 10,
304
- 11, 12, 13, 14, 15, 11, 16, 2,
305
- 0, 18, 0, 19, 0, 21, 22, 20,
306
- 24, 25, 23, 28, 27, 29, 27, 26,
307
- 32, 31, 33, 31, 30, 32, 31, 34,
308
- 31, 30, 32, 31, 35, 31, 30, 37,
309
- 36, 36, 0, 3, 38, 38, 0, 40,
310
- 41, 39, 3, 0, 42, 0, 43, 0,
311
- 44, 0, 45, 0, 46, 0, 47, 0,
312
- 48, 0, 49, 0, 50, 0, 51, 0,
313
- 52, 0, 53, 0, 54, 0, 55, 0,
314
- 56, 0, 58, 59, 57, 61, 62, 60,
315
- 0, 0, 0, 0, 63, 64, 65, 64,
316
- 64, 67, 66, 63, 3, 68, 8, 68,
317
- 0, 69, 0, 70, 71, 0, 72, 0,
318
- 74, 73, 76, 75, 76, 77, 78, 79,
319
- 80, 78, 81, 82, 83, 84, 85, 86,
320
- 83, 77, 75, 76, 87, 75, 76, 88,
321
- 75, 76, 89, 75, 76, 90, 75, 76,
322
- 91, 75, 76, 92, 75, 76, 93, 75,
323
- 76, 94, 75, 76, 95, 75, 76, 96,
324
- 75, 76, 97, 75, 76, 98, 75, 76,
325
- 99, 75, 76, 100, 75, 76, 101, 75,
326
- 103, 102, 104, 105, 106, 107, 108, 109,
327
- 110, 111, 112, 113, 114, 115, 111, 116,
328
- 102, 0, 117, 0, 118, 0, 119, 0,
329
- 120, 0, 121, 0, 122, 0, 123, 0,
330
- 124, 0, 126, 125, 128, 127, 128, 129,
331
- 130, 131, 130, 129, 127, 128, 132, 127,
332
- 128, 133, 127, 128, 134, 127, 128, 135,
333
- 127, 128, 136, 127, 128, 137, 127, 138,
334
- 0, 139, 0, 140, 0, 141, 0, 142,
335
- 0, 143, 0, 144, 0, 69, 0, 145,
336
- 0, 146, 0, 147, 0, 148, 0, 149,
337
- 0, 150, 151, 0, 152, 0, 153, 0,
338
- 154, 0, 155, 0, 156, 0, 157, 0,
339
- 159, 158, 161, 160, 161, 162, 163, 164,
340
- 165, 163, 166, 167, 168, 169, 170, 171,
341
- 168, 162, 160, 161, 172, 160, 161, 173,
342
- 160, 161, 174, 160, 161, 175, 160, 161,
343
- 176, 160, 161, 177, 160, 161, 178, 160,
344
- 161, 179, 160, 161, 180, 160, 161, 181,
345
- 160, 161, 182, 160, 161, 183, 160, 161,
346
- 184, 160, 161, 185, 160, 161, 186, 160,
347
- 161, 187, 160, 161, 188, 160, 161, 187,
348
- 160, 161, 189, 160, 161, 190, 160, 161,
349
- 191, 160, 161, 192, 160, 161, 193, 160,
350
- 161, 194, 160, 161, 195, 160, 161, 196,
351
- 160, 161, 187, 160, 161, 197, 160, 161,
352
- 198, 160, 161, 199, 160, 161, 200, 160,
353
- 161, 201, 160, 161, 186, 160, 161, 202,
354
- 160, 161, 203, 160, 161, 204, 160, 161,
355
- 205, 160, 161, 201, 160, 207, 206, 209,
356
- 208, 209, 210, 211, 212, 213, 211, 214,
357
- 215, 216, 217, 218, 219, 216, 210, 208,
358
- 209, 220, 208, 209, 221, 208, 209, 222,
359
- 208, 209, 223, 208, 209, 224, 208, 209,
360
- 225, 208, 209, 226, 208, 209, 227, 208,
361
- 209, 228, 208, 209, 229, 208, 209, 230,
362
- 208, 209, 231, 208, 209, 232, 208, 209,
363
- 233, 208, 209, 234, 208, 209, 235, 208,
364
- 209, 236, 237, 208, 209, 234, 208, 209,
365
- 235, 208, 209, 238, 208, 209, 239, 208,
366
- 209, 240, 208, 209, 241, 208, 209, 242,
367
- 208, 209, 243, 208, 209, 244, 208, 209,
368
- 245, 208, 209, 235, 208, 209, 246, 208,
369
- 209, 247, 208, 209, 248, 208, 209, 249,
370
- 208, 209, 250, 208, 209, 251, 234, 208,
371
- 209, 252, 208, 209, 253, 208, 209, 254,
372
- 208, 209, 255, 208, 209, 236, 208, 209,
373
- 256, 208, 209, 257, 208, 209, 258, 208,
374
- 209, 259, 208, 209, 236, 208, 260, 0,
375
- 261, 0, 262, 0, 263, 0, 264, 0,
376
- 265, 0, 267, 266, 269, 268, 269, 270,
377
- 271, 272, 271, 273, 274, 275, 276, 270,
378
- 268, 269, 277, 268, 269, 278, 268, 269,
379
- 279, 268, 269, 280, 268, 269, 281, 268,
380
- 269, 282, 268, 269, 283, 268, 269, 284,
381
- 268, 269, 285, 268, 269, 286, 268, 269,
382
- 287, 268, 269, 288, 268, 269, 289, 268,
383
- 269, 290, 268, 269, 291, 268, 269, 292,
384
- 268, 269, 293, 268, 269, 294, 268, 269,
385
- 295, 268, 269, 296, 268, 269, 297, 268,
386
- 269, 291, 268, 269, 298, 268, 269, 299,
387
- 268, 269, 300, 268, 269, 301, 268, 269,
388
- 302, 268, 269, 303, 292, 268, 269, 304,
389
- 268, 269, 305, 268, 269, 306, 268, 269,
390
- 307, 268, 269, 291, 268, 269, 308, 268,
391
- 269, 309, 268, 269, 310, 268, 269, 311,
392
- 268, 269, 291, 268, 312, 313, 312, 0,
393
- 316, 315, 317, 318, 315, 314, 0, 320,
394
- 321, 319, 0, 320, 319, 316, 322, 320,
395
- 321, 322, 319, 316, 323, 324, 325, 326,
396
- 327, 328, 329, 330, 331, 332, 333, 334,
397
- 335, 331, 336, 323, 0, 76, 337, 75,
398
- 76, 338, 75, 76, 337, 75, 76, 339,
399
- 75, 76, 340, 75, 76, 341, 75, 76,
400
- 342, 75, 76, 343, 75, 76, 344, 75,
401
- 76, 345, 75, 76, 346, 75, 76, 337,
402
- 75, 76, 347, 75, 76, 348, 75, 76,
403
- 349, 75, 76, 350, 75, 76, 351, 75,
404
- 76, 352, 101, 75, 76, 353, 75, 76,
405
- 354, 75, 76, 355, 75, 76, 356, 75,
406
- 76, 357, 75, 76, 101, 75, 76, 358,
407
- 75, 76, 359, 75, 76, 360, 75, 76,
408
- 361, 75, 76, 357, 75, 69, 0, 362,
409
- 0
410
- ]
411
-
412
- class << self
413
- attr_accessor :_lexer_trans_targs
414
- private :_lexer_trans_targs, :_lexer_trans_targs=
415
- end
416
- self._lexer_trans_targs = [
417
- 0, 2, 4, 4, 5, 15, 17, 31,
418
- 34, 37, 38, 59, 60, 76, 84, 184,
419
- 231, 3, 6, 7, 8, 9, 8, 8,
420
- 9, 8, 10, 10, 10, 11, 10, 10,
421
- 10, 11, 12, 13, 14, 4, 14, 15,
422
- 4, 16, 18, 19, 20, 21, 22, 23,
423
- 24, 25, 26, 27, 28, 29, 30, 267,
424
- 32, 33, 4, 16, 33, 4, 16, 35,
425
- 36, 4, 35, 34, 36, 31, 39, 266,
426
- 40, 41, 42, 41, 42, 42, 4, 43,
427
- 57, 237, 238, 240, 241, 249, 261, 44,
428
- 45, 46, 47, 48, 49, 50, 51, 52,
429
- 53, 54, 55, 56, 4, 58, 4, 4,
430
- 5, 15, 17, 31, 34, 37, 38, 59,
431
- 60, 76, 84, 184, 231, 37, 61, 62,
432
- 63, 64, 65, 66, 67, 68, 69, 68,
433
- 69, 69, 4, 70, 71, 72, 73, 74,
434
- 75, 58, 77, 78, 79, 80, 81, 82,
435
- 83, 85, 86, 87, 88, 89, 90, 137,
436
- 91, 92, 93, 94, 95, 96, 97, 98,
437
- 97, 98, 98, 4, 99, 113, 114, 115,
438
- 117, 118, 126, 132, 100, 101, 102, 103,
439
- 104, 105, 106, 107, 108, 109, 110, 111,
440
- 112, 4, 58, 113, 116, 114, 119, 120,
441
- 121, 122, 123, 124, 125, 127, 128, 129,
442
- 130, 131, 133, 134, 135, 136, 138, 139,
443
- 138, 139, 139, 4, 140, 154, 155, 156,
444
- 159, 160, 168, 179, 141, 142, 143, 144,
445
- 145, 146, 147, 148, 149, 150, 151, 152,
446
- 153, 4, 58, 154, 157, 158, 155, 161,
447
- 162, 163, 164, 165, 166, 167, 169, 170,
448
- 171, 172, 173, 174, 175, 176, 177, 178,
449
- 180, 181, 182, 183, 185, 186, 187, 188,
450
- 189, 190, 191, 192, 191, 192, 192, 4,
451
- 193, 207, 209, 215, 226, 194, 195, 196,
452
- 197, 198, 199, 200, 201, 202, 203, 204,
453
- 205, 206, 4, 208, 58, 210, 211, 212,
454
- 213, 214, 216, 217, 218, 219, 220, 221,
455
- 222, 223, 224, 225, 227, 228, 229, 230,
456
- 231, 232, 233, 235, 236, 234, 232, 233,
457
- 234, 232, 235, 236, 5, 15, 17, 31,
458
- 34, 37, 38, 59, 60, 76, 84, 184,
459
- 231, 57, 239, 237, 242, 243, 244, 245,
460
- 246, 247, 248, 250, 251, 252, 253, 254,
461
- 255, 256, 257, 258, 259, 260, 262, 263,
462
- 264, 265, 0
463
- ]
464
-
465
- class << self
466
- attr_accessor :_lexer_trans_actions
467
- private :_lexer_trans_actions, :_lexer_trans_actions=
468
- end
469
- self._lexer_trans_actions = [
470
- 43, 0, 0, 54, 3, 1, 0, 29,
471
- 1, 29, 29, 29, 29, 29, 29, 29,
472
- 35, 0, 0, 0, 7, 139, 48, 0,
473
- 102, 9, 5, 45, 134, 45, 0, 33,
474
- 122, 33, 33, 0, 11, 106, 0, 0,
475
- 114, 25, 0, 0, 0, 0, 0, 0,
476
- 0, 0, 0, 0, 0, 0, 0, 0,
477
- 0, 57, 149, 126, 0, 110, 23, 0,
478
- 27, 118, 27, 51, 0, 0, 0, 0,
479
- 0, 57, 144, 0, 54, 0, 72, 33,
480
- 84, 84, 84, 84, 84, 84, 84, 0,
481
- 0, 0, 0, 0, 0, 0, 0, 0,
482
- 0, 0, 0, 0, 15, 15, 31, 130,
483
- 60, 57, 31, 63, 57, 63, 63, 63,
484
- 63, 63, 63, 63, 66, 0, 0, 0,
485
- 0, 0, 0, 0, 0, 57, 144, 0,
486
- 54, 0, 81, 84, 0, 0, 0, 0,
487
- 0, 21, 0, 0, 0, 0, 0, 0,
488
- 0, 0, 0, 0, 0, 0, 0, 0,
489
- 0, 0, 0, 0, 0, 0, 57, 144,
490
- 0, 54, 0, 78, 33, 84, 84, 84,
491
- 84, 84, 84, 84, 0, 0, 0, 0,
492
- 0, 0, 0, 0, 0, 0, 0, 0,
493
- 0, 19, 19, 0, 0, 0, 0, 0,
494
- 0, 0, 0, 0, 0, 0, 0, 0,
495
- 0, 0, 0, 0, 0, 0, 57, 144,
496
- 0, 54, 0, 75, 33, 84, 84, 84,
497
- 84, 84, 84, 84, 0, 0, 0, 0,
498
- 0, 0, 0, 0, 0, 0, 0, 0,
499
- 0, 17, 17, 0, 0, 0, 0, 0,
500
- 0, 0, 0, 0, 0, 0, 0, 0,
501
- 0, 0, 0, 0, 0, 0, 0, 0,
502
- 0, 0, 0, 0, 0, 0, 0, 0,
503
- 0, 0, 57, 144, 0, 54, 0, 69,
504
- 33, 84, 84, 84, 84, 0, 0, 0,
505
- 0, 0, 0, 0, 0, 0, 0, 0,
506
- 0, 0, 13, 0, 13, 0, 0, 0,
507
- 0, 0, 0, 0, 0, 0, 0, 0,
508
- 0, 0, 0, 0, 0, 0, 0, 0,
509
- 0, 0, 37, 37, 54, 37, 87, 0,
510
- 0, 39, 0, 0, 93, 90, 41, 96,
511
- 90, 96, 96, 96, 96, 96, 96, 96,
512
- 99, 0, 0, 0, 0, 0, 0, 0,
513
- 0, 0, 0, 0, 0, 0, 0, 0,
514
- 0, 0, 0, 0, 0, 0, 0, 0,
515
- 0, 0, 0
516
- ]
517
-
518
- class << self
519
- attr_accessor :_lexer_eof_actions
520
- private :_lexer_eof_actions, :_lexer_eof_actions=
521
- end
522
- self._lexer_eof_actions = [
523
- 0, 43, 43, 43, 43, 43, 43, 43,
524
- 43, 43, 43, 43, 43, 43, 43, 43,
525
- 43, 43, 43, 43, 43, 43, 43, 43,
526
- 43, 43, 43, 43, 43, 43, 43, 43,
527
- 43, 43, 43, 43, 43, 43, 43, 43,
528
- 43, 43, 43, 43, 43, 43, 43, 43,
529
- 43, 43, 43, 43, 43, 43, 43, 43,
530
- 43, 43, 43, 43, 43, 43, 43, 43,
531
- 43, 43, 43, 43, 43, 43, 43, 43,
532
- 43, 43, 43, 43, 43, 43, 43, 43,
533
- 43, 43, 43, 43, 43, 43, 43, 43,
534
- 43, 43, 43, 43, 43, 43, 43, 43,
535
- 43, 43, 43, 43, 43, 43, 43, 43,
536
- 43, 43, 43, 43, 43, 43, 43, 43,
537
- 43, 43, 43, 43, 43, 43, 43, 43,
538
- 43, 43, 43, 43, 43, 43, 43, 43,
539
- 43, 43, 43, 43, 43, 43, 43, 43,
540
- 43, 43, 43, 43, 43, 43, 43, 43,
541
- 43, 43, 43, 43, 43, 43, 43, 43,
542
- 43, 43, 43, 43, 43, 43, 43, 43,
543
- 43, 43, 43, 43, 43, 43, 43, 43,
544
- 43, 43, 43, 43, 43, 43, 43, 43,
545
- 43, 43, 43, 43, 43, 43, 43, 43,
546
- 43, 43, 43, 43, 43, 43, 43, 43,
547
- 43, 43, 43, 43, 43, 43, 43, 43,
548
- 43, 43, 43, 43, 43, 43, 43, 43,
549
- 43, 43, 43, 43, 43, 43, 43, 43,
550
- 43, 43, 43, 43, 43, 43, 43, 43,
551
- 43, 43, 43, 43, 43, 43, 43, 43,
552
- 43, 43, 43, 43, 43, 43, 43, 43,
553
- 43, 43, 43, 43, 43, 43, 43, 43,
554
- 43, 43, 43, 43, 43, 43, 43, 43,
555
- 43, 43, 43, 43, 43, 43, 43, 43,
556
- 43, 43, 43, 43
557
- ]
558
-
559
- class << self
560
- attr_accessor :lexer_start
561
- end
562
- self.lexer_start = 1;
563
- class << self
564
- attr_accessor :lexer_first_final
565
- end
566
- self.lexer_first_final = 267;
567
- class << self
568
- attr_accessor :lexer_error
569
- end
570
- self.lexer_error = 0;
571
16
 
572
- class << self
573
- attr_accessor :lexer_en_main
574
- end
575
- self.lexer_en_main = 1;
17
+ # Initialize ivars to avoid warnings
18
+ @keyword = nil
576
19
 
20
+ # line 21 "lib/gherkin/lexer/en_lol.rb"
21
+ class << self
22
+ attr_accessor :_lexer_actions
23
+ private :_lexer_actions, :_lexer_actions=
24
+ end
25
+ self._lexer_actions = [
26
+ 0, 1, 0, 1, 1, 1, 2, 1,
27
+ 3, 1, 4, 1, 5, 1, 6, 1,
28
+ 7, 1, 8, 1, 9, 1, 10, 1,
29
+ 11, 1, 12, 1, 13, 1, 16, 1,
30
+ 17, 1, 18, 1, 19, 1, 20, 1,
31
+ 21, 1, 22, 1, 23, 2, 2, 18,
32
+ 2, 3, 4, 2, 13, 0, 2, 14,
33
+ 15, 2, 17, 0, 2, 17, 1, 2,
34
+ 17, 16, 2, 17, 19, 2, 18, 6,
35
+ 2, 18, 7, 2, 18, 8, 2, 18,
36
+ 9, 2, 18, 10, 2, 18, 16, 2,
37
+ 20, 21, 2, 22, 0, 2, 22, 1,
38
+ 2, 22, 16, 2, 22, 19, 3, 4,
39
+ 14, 15, 3, 5, 14, 15, 3, 11,
40
+ 14, 15, 3, 12, 14, 15, 3, 13,
41
+ 14, 15, 3, 14, 15, 18, 3, 17,
42
+ 0, 11, 3, 17, 14, 15, 4, 2,
43
+ 14, 15, 18, 4, 3, 4, 14, 15,
44
+ 4, 17, 0, 14, 15, 5, 17, 0,
45
+ 11, 14, 15
46
+ ]
47
+
48
+ class << self
49
+ attr_accessor :_lexer_key_offsets
50
+ private :_lexer_key_offsets, :_lexer_key_offsets=
51
+ end
52
+ self._lexer_key_offsets = [
53
+ 0, 0, 19, 20, 21, 39, 40, 41,
54
+ 43, 45, 50, 55, 60, 65, 69, 73,
55
+ 75, 76, 77, 78, 79, 80, 81, 82,
56
+ 83, 84, 85, 86, 87, 88, 89, 90,
57
+ 91, 93, 95, 100, 107, 112, 113, 115,
58
+ 116, 117, 118, 133, 135, 137, 139, 141,
59
+ 143, 145, 147, 149, 151, 153, 155, 157,
60
+ 159, 161, 163, 181, 182, 183, 184, 185,
61
+ 186, 187, 188, 189, 190, 191, 198, 200,
62
+ 202, 204, 206, 208, 210, 211, 212, 213,
63
+ 214, 215, 216, 217, 218, 219, 220, 221,
64
+ 222, 223, 225, 226, 227, 228, 229, 230,
65
+ 231, 232, 233, 248, 250, 252, 254, 256,
66
+ 258, 260, 262, 264, 266, 268, 270, 272,
67
+ 274, 276, 278, 280, 282, 284, 286, 288,
68
+ 290, 292, 294, 296, 298, 300, 302, 304,
69
+ 306, 308, 310, 312, 314, 316, 318, 320,
70
+ 322, 324, 325, 326, 341, 343, 345, 347,
71
+ 349, 351, 353, 355, 357, 359, 361, 363,
72
+ 365, 367, 369, 371, 373, 376, 378, 380,
73
+ 382, 384, 386, 388, 390, 392, 394, 396,
74
+ 398, 400, 402, 404, 406, 408, 411, 413,
75
+ 415, 417, 419, 421, 423, 425, 427, 429,
76
+ 431, 432, 433, 434, 435, 436, 437, 438,
77
+ 439, 450, 452, 454, 456, 458, 460, 462,
78
+ 464, 466, 468, 470, 472, 474, 476, 478,
79
+ 480, 482, 484, 486, 488, 490, 492, 494,
80
+ 496, 498, 500, 502, 504, 507, 509, 511,
81
+ 513, 515, 517, 519, 521, 523, 525, 527,
82
+ 531, 537, 540, 542, 548, 566, 568, 570,
83
+ 572, 574, 576, 578, 580, 582, 584, 586,
84
+ 588, 590, 592, 594, 596, 598, 600, 603,
85
+ 605, 607, 609, 611, 613, 615, 617, 619,
86
+ 621, 623, 625, 626
87
+ ]
88
+
89
+ class << self
90
+ attr_accessor :_lexer_trans_keys
91
+ private :_lexer_trans_keys, :_lexer_trans_keys=
92
+ end
93
+ self._lexer_trans_keys = [
94
+ -17, 10, 32, 34, 35, 37, 42, 64,
95
+ 65, 66, 68, 69, 73, 77, 79, 87,
96
+ 124, 9, 13, -69, -65, 10, 32, 34,
97
+ 35, 37, 42, 64, 65, 66, 68, 69,
98
+ 73, 77, 79, 87, 124, 9, 13, 34,
99
+ 34, 10, 13, 10, 13, 10, 32, 34,
100
+ 9, 13, 10, 32, 34, 9, 13, 10,
101
+ 32, 34, 9, 13, 10, 32, 34, 9,
102
+ 13, 10, 32, 9, 13, 10, 32, 9,
103
+ 13, 10, 13, 10, 95, 70, 69, 65,
104
+ 84, 85, 82, 69, 95, 69, 78, 68,
105
+ 95, 37, 32, 10, 13, 10, 13, 13,
106
+ 32, 64, 9, 10, 9, 10, 13, 32,
107
+ 64, 11, 12, 10, 32, 64, 9, 13,
108
+ 78, 52, 85, 58, 10, 10, 10, 32,
109
+ 35, 37, 42, 64, 65, 66, 68, 73,
110
+ 77, 79, 87, 9, 13, 10, 95, 10,
111
+ 70, 10, 69, 10, 65, 10, 84, 10,
112
+ 85, 10, 82, 10, 69, 10, 95, 10,
113
+ 69, 10, 78, 10, 68, 10, 95, 10,
114
+ 37, 10, 32, 10, 32, 34, 35, 37,
115
+ 42, 64, 65, 66, 68, 69, 73, 77,
116
+ 79, 87, 124, 9, 13, 69, 88, 65,
117
+ 77, 80, 76, 90, 58, 10, 10, 10,
118
+ 32, 35, 79, 124, 9, 13, 10, 72,
119
+ 10, 32, 10, 72, 10, 65, 10, 73,
120
+ 10, 58, 32, 67, 65, 78, 32, 72,
121
+ 65, 90, 73, 83, 72, 85, 78, 32,
122
+ 58, 83, 82, 83, 76, 89, 58, 10,
123
+ 10, 10, 32, 35, 37, 42, 64, 65,
124
+ 66, 68, 73, 77, 79, 87, 9, 13,
125
+ 10, 95, 10, 70, 10, 69, 10, 65,
126
+ 10, 84, 10, 85, 10, 82, 10, 69,
127
+ 10, 95, 10, 69, 10, 78, 10, 68,
128
+ 10, 95, 10, 37, 10, 32, 10, 78,
129
+ 10, 85, 10, 84, 10, 69, 10, 32,
130
+ 10, 67, 10, 65, 10, 78, 10, 32,
131
+ 10, 72, 10, 65, 10, 90, 10, 73,
132
+ 10, 83, 10, 72, 10, 85, 10, 78,
133
+ 10, 58, 10, 72, 10, 32, 10, 72,
134
+ 10, 65, 10, 73, 10, 10, 10, 32,
135
+ 35, 37, 42, 64, 65, 66, 68, 73,
136
+ 77, 79, 87, 9, 13, 10, 95, 10,
137
+ 70, 10, 69, 10, 65, 10, 84, 10,
138
+ 85, 10, 82, 10, 69, 10, 95, 10,
139
+ 69, 10, 78, 10, 68, 10, 95, 10,
140
+ 37, 10, 32, 10, 78, 10, 52, 85,
141
+ 10, 58, 10, 84, 10, 69, 10, 32,
142
+ 10, 67, 10, 65, 10, 78, 10, 32,
143
+ 10, 72, 10, 65, 10, 90, 10, 73,
144
+ 10, 83, 10, 72, 10, 85, 10, 78,
145
+ 10, 32, 58, 10, 83, 10, 82, 10,
146
+ 83, 10, 76, 10, 89, 10, 72, 10,
147
+ 32, 10, 72, 10, 65, 10, 73, 72,
148
+ 32, 72, 65, 73, 58, 10, 10, 10,
149
+ 32, 35, 37, 64, 66, 69, 77, 79,
150
+ 9, 13, 10, 95, 10, 70, 10, 69,
151
+ 10, 65, 10, 84, 10, 85, 10, 82,
152
+ 10, 69, 10, 95, 10, 69, 10, 78,
153
+ 10, 68, 10, 95, 10, 37, 10, 52,
154
+ 10, 58, 10, 88, 10, 65, 10, 77,
155
+ 10, 80, 10, 76, 10, 90, 10, 73,
156
+ 10, 83, 10, 72, 10, 85, 10, 78,
157
+ 10, 32, 58, 10, 83, 10, 82, 10,
158
+ 83, 10, 76, 10, 89, 10, 72, 10,
159
+ 32, 10, 72, 10, 65, 10, 73, 32,
160
+ 124, 9, 13, 10, 32, 92, 124, 9,
161
+ 13, 10, 92, 124, 10, 92, 10, 32,
162
+ 92, 124, 9, 13, 10, 32, 34, 35,
163
+ 37, 42, 64, 65, 66, 68, 69, 73,
164
+ 77, 79, 87, 124, 9, 13, 10, 78,
165
+ 10, 85, 10, 84, 10, 69, 10, 32,
166
+ 10, 67, 10, 65, 10, 78, 10, 32,
167
+ 10, 72, 10, 65, 10, 90, 10, 73,
168
+ 10, 83, 10, 72, 10, 85, 10, 78,
169
+ 10, 32, 58, 10, 83, 10, 82, 10,
170
+ 83, 10, 76, 10, 89, 10, 58, 10,
171
+ 72, 10, 32, 10, 72, 10, 65, 10,
172
+ 73, 84, 0
173
+ ]
174
+
175
+ class << self
176
+ attr_accessor :_lexer_single_lengths
177
+ private :_lexer_single_lengths, :_lexer_single_lengths=
178
+ end
179
+ self._lexer_single_lengths = [
180
+ 0, 17, 1, 1, 16, 1, 1, 2,
181
+ 2, 3, 3, 3, 3, 2, 2, 2,
182
+ 1, 1, 1, 1, 1, 1, 1, 1,
183
+ 1, 1, 1, 1, 1, 1, 1, 1,
184
+ 2, 2, 3, 5, 3, 1, 2, 1,
185
+ 1, 1, 13, 2, 2, 2, 2, 2,
186
+ 2, 2, 2, 2, 2, 2, 2, 2,
187
+ 2, 2, 16, 1, 1, 1, 1, 1,
188
+ 1, 1, 1, 1, 1, 5, 2, 2,
189
+ 2, 2, 2, 2, 1, 1, 1, 1,
190
+ 1, 1, 1, 1, 1, 1, 1, 1,
191
+ 1, 2, 1, 1, 1, 1, 1, 1,
192
+ 1, 1, 13, 2, 2, 2, 2, 2,
193
+ 2, 2, 2, 2, 2, 2, 2, 2,
194
+ 2, 2, 2, 2, 2, 2, 2, 2,
195
+ 2, 2, 2, 2, 2, 2, 2, 2,
196
+ 2, 2, 2, 2, 2, 2, 2, 2,
197
+ 2, 1, 1, 13, 2, 2, 2, 2,
198
+ 2, 2, 2, 2, 2, 2, 2, 2,
199
+ 2, 2, 2, 2, 3, 2, 2, 2,
200
+ 2, 2, 2, 2, 2, 2, 2, 2,
201
+ 2, 2, 2, 2, 2, 3, 2, 2,
202
+ 2, 2, 2, 2, 2, 2, 2, 2,
203
+ 1, 1, 1, 1, 1, 1, 1, 1,
204
+ 9, 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, 3, 2, 2, 2,
208
+ 2, 2, 2, 2, 2, 2, 2, 2,
209
+ 4, 3, 2, 4, 16, 2, 2, 2,
210
+ 2, 2, 2, 2, 2, 2, 2, 2,
211
+ 2, 2, 2, 2, 2, 2, 3, 2,
212
+ 2, 2, 2, 2, 2, 2, 2, 2,
213
+ 2, 2, 1, 0
214
+ ]
215
+
216
+ class << self
217
+ attr_accessor :_lexer_range_lengths
218
+ private :_lexer_range_lengths, :_lexer_range_lengths=
219
+ end
220
+ self._lexer_range_lengths = [
221
+ 0, 1, 0, 0, 1, 0, 0, 0,
222
+ 0, 1, 1, 1, 1, 1, 1, 0,
223
+ 0, 0, 0, 0, 0, 0, 0, 0,
224
+ 0, 0, 0, 0, 0, 0, 0, 0,
225
+ 0, 0, 1, 1, 1, 0, 0, 0,
226
+ 0, 0, 1, 0, 0, 0, 0, 0,
227
+ 0, 0, 0, 0, 0, 0, 0, 0,
228
+ 0, 0, 1, 0, 0, 0, 0, 0,
229
+ 0, 0, 0, 0, 0, 1, 0, 0,
230
+ 0, 0, 0, 0, 0, 0, 0, 0,
231
+ 0, 0, 0, 0, 0, 0, 0, 0,
232
+ 0, 0, 0, 0, 0, 0, 0, 0,
233
+ 0, 0, 1, 0, 0, 0, 0, 0,
234
+ 0, 0, 0, 0, 0, 0, 0, 0,
235
+ 0, 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, 1, 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, 0, 0, 0, 0,
244
+ 0, 0, 0, 0, 0, 0, 0, 0,
245
+ 1, 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, 1,
250
+ 1, 0, 0, 1, 1, 0, 0, 0,
251
+ 0, 0, 0, 0, 0, 0, 0, 0,
252
+ 0, 0, 0, 0, 0, 0, 0, 0,
253
+ 0, 0, 0, 0, 0, 0, 0, 0,
254
+ 0, 0, 0, 0
255
+ ]
256
+
257
+ class << self
258
+ attr_accessor :_lexer_index_offsets
259
+ private :_lexer_index_offsets, :_lexer_index_offsets=
260
+ end
261
+ self._lexer_index_offsets = [
262
+ 0, 0, 19, 21, 23, 41, 43, 45,
263
+ 48, 51, 56, 61, 66, 71, 75, 79,
264
+ 82, 84, 86, 88, 90, 92, 94, 96,
265
+ 98, 100, 102, 104, 106, 108, 110, 112,
266
+ 114, 117, 120, 125, 132, 137, 139, 142,
267
+ 144, 146, 148, 163, 166, 169, 172, 175,
268
+ 178, 181, 184, 187, 190, 193, 196, 199,
269
+ 202, 205, 208, 226, 228, 230, 232, 234,
270
+ 236, 238, 240, 242, 244, 246, 253, 256,
271
+ 259, 262, 265, 268, 271, 273, 275, 277,
272
+ 279, 281, 283, 285, 287, 289, 291, 293,
273
+ 295, 297, 300, 302, 304, 306, 308, 310,
274
+ 312, 314, 316, 331, 334, 337, 340, 343,
275
+ 346, 349, 352, 355, 358, 361, 364, 367,
276
+ 370, 373, 376, 379, 382, 385, 388, 391,
277
+ 394, 397, 400, 403, 406, 409, 412, 415,
278
+ 418, 421, 424, 427, 430, 433, 436, 439,
279
+ 442, 445, 447, 449, 464, 467, 470, 473,
280
+ 476, 479, 482, 485, 488, 491, 494, 497,
281
+ 500, 503, 506, 509, 512, 516, 519, 522,
282
+ 525, 528, 531, 534, 537, 540, 543, 546,
283
+ 549, 552, 555, 558, 561, 564, 568, 571,
284
+ 574, 577, 580, 583, 586, 589, 592, 595,
285
+ 598, 600, 602, 604, 606, 608, 610, 612,
286
+ 614, 625, 628, 631, 634, 637, 640, 643,
287
+ 646, 649, 652, 655, 658, 661, 664, 667,
288
+ 670, 673, 676, 679, 682, 685, 688, 691,
289
+ 694, 697, 700, 703, 706, 710, 713, 716,
290
+ 719, 722, 725, 728, 731, 734, 737, 740,
291
+ 744, 750, 754, 757, 763, 781, 784, 787,
292
+ 790, 793, 796, 799, 802, 805, 808, 811,
293
+ 814, 817, 820, 823, 826, 829, 832, 836,
294
+ 839, 842, 845, 848, 851, 854, 857, 860,
295
+ 863, 866, 869, 871
296
+ ]
297
+
298
+ class << self
299
+ attr_accessor :_lexer_indicies
300
+ private :_lexer_indicies, :_lexer_indicies=
301
+ end
302
+ self._lexer_indicies = [
303
+ 1, 3, 2, 4, 5, 6, 7, 8,
304
+ 9, 10, 11, 12, 13, 14, 15, 11,
305
+ 16, 2, 0, 17, 0, 2, 0, 3,
306
+ 2, 4, 5, 6, 7, 8, 9, 10,
307
+ 11, 12, 13, 14, 15, 11, 16, 2,
308
+ 0, 18, 0, 19, 0, 21, 22, 20,
309
+ 24, 25, 23, 28, 27, 29, 27, 26,
310
+ 32, 31, 33, 31, 30, 32, 31, 34,
311
+ 31, 30, 32, 31, 35, 31, 30, 37,
312
+ 36, 36, 0, 3, 38, 38, 0, 40,
313
+ 41, 39, 3, 0, 42, 0, 43, 0,
314
+ 44, 0, 45, 0, 46, 0, 47, 0,
315
+ 48, 0, 49, 0, 50, 0, 51, 0,
316
+ 52, 0, 53, 0, 54, 0, 55, 0,
317
+ 56, 0, 58, 59, 57, 61, 62, 60,
318
+ 0, 0, 0, 0, 63, 64, 65, 64,
319
+ 64, 67, 66, 63, 3, 68, 8, 68,
320
+ 0, 69, 0, 70, 71, 0, 72, 0,
321
+ 74, 73, 76, 75, 76, 77, 78, 79,
322
+ 80, 78, 81, 82, 83, 84, 85, 86,
323
+ 83, 77, 75, 76, 87, 75, 76, 88,
324
+ 75, 76, 89, 75, 76, 90, 75, 76,
325
+ 91, 75, 76, 92, 75, 76, 93, 75,
326
+ 76, 94, 75, 76, 95, 75, 76, 96,
327
+ 75, 76, 97, 75, 76, 98, 75, 76,
328
+ 99, 75, 76, 100, 75, 76, 101, 75,
329
+ 103, 102, 104, 105, 106, 107, 108, 109,
330
+ 110, 111, 112, 113, 114, 115, 111, 116,
331
+ 102, 0, 117, 0, 118, 0, 119, 0,
332
+ 120, 0, 121, 0, 122, 0, 123, 0,
333
+ 124, 0, 126, 125, 128, 127, 128, 129,
334
+ 130, 131, 130, 129, 127, 128, 132, 127,
335
+ 128, 133, 127, 128, 134, 127, 128, 135,
336
+ 127, 128, 136, 127, 128, 137, 127, 138,
337
+ 0, 139, 0, 140, 0, 141, 0, 142,
338
+ 0, 143, 0, 144, 0, 69, 0, 145,
339
+ 0, 146, 0, 147, 0, 148, 0, 149,
340
+ 0, 150, 151, 0, 152, 0, 153, 0,
341
+ 154, 0, 155, 0, 156, 0, 157, 0,
342
+ 159, 158, 161, 160, 161, 162, 163, 164,
343
+ 165, 163, 166, 167, 168, 169, 170, 171,
344
+ 168, 162, 160, 161, 172, 160, 161, 173,
345
+ 160, 161, 174, 160, 161, 175, 160, 161,
346
+ 176, 160, 161, 177, 160, 161, 178, 160,
347
+ 161, 179, 160, 161, 180, 160, 161, 181,
348
+ 160, 161, 182, 160, 161, 183, 160, 161,
349
+ 184, 160, 161, 185, 160, 161, 186, 160,
350
+ 161, 187, 160, 161, 188, 160, 161, 187,
351
+ 160, 161, 189, 160, 161, 190, 160, 161,
352
+ 191, 160, 161, 192, 160, 161, 193, 160,
353
+ 161, 194, 160, 161, 195, 160, 161, 196,
354
+ 160, 161, 187, 160, 161, 197, 160, 161,
355
+ 198, 160, 161, 199, 160, 161, 200, 160,
356
+ 161, 201, 160, 161, 186, 160, 161, 202,
357
+ 160, 161, 203, 160, 161, 204, 160, 161,
358
+ 205, 160, 161, 201, 160, 207, 206, 209,
359
+ 208, 209, 210, 211, 212, 213, 211, 214,
360
+ 215, 216, 217, 218, 219, 216, 210, 208,
361
+ 209, 220, 208, 209, 221, 208, 209, 222,
362
+ 208, 209, 223, 208, 209, 224, 208, 209,
363
+ 225, 208, 209, 226, 208, 209, 227, 208,
364
+ 209, 228, 208, 209, 229, 208, 209, 230,
365
+ 208, 209, 231, 208, 209, 232, 208, 209,
366
+ 233, 208, 209, 234, 208, 209, 235, 208,
367
+ 209, 236, 237, 208, 209, 234, 208, 209,
368
+ 235, 208, 209, 238, 208, 209, 239, 208,
369
+ 209, 240, 208, 209, 241, 208, 209, 242,
370
+ 208, 209, 243, 208, 209, 244, 208, 209,
371
+ 245, 208, 209, 235, 208, 209, 246, 208,
372
+ 209, 247, 208, 209, 248, 208, 209, 249,
373
+ 208, 209, 250, 208, 209, 251, 234, 208,
374
+ 209, 252, 208, 209, 253, 208, 209, 254,
375
+ 208, 209, 255, 208, 209, 236, 208, 209,
376
+ 256, 208, 209, 257, 208, 209, 258, 208,
377
+ 209, 259, 208, 209, 236, 208, 260, 0,
378
+ 261, 0, 262, 0, 263, 0, 264, 0,
379
+ 265, 0, 267, 266, 269, 268, 269, 270,
380
+ 271, 272, 271, 273, 274, 275, 276, 270,
381
+ 268, 269, 277, 268, 269, 278, 268, 269,
382
+ 279, 268, 269, 280, 268, 269, 281, 268,
383
+ 269, 282, 268, 269, 283, 268, 269, 284,
384
+ 268, 269, 285, 268, 269, 286, 268, 269,
385
+ 287, 268, 269, 288, 268, 269, 289, 268,
386
+ 269, 290, 268, 269, 291, 268, 269, 292,
387
+ 268, 269, 293, 268, 269, 294, 268, 269,
388
+ 295, 268, 269, 296, 268, 269, 297, 268,
389
+ 269, 291, 268, 269, 298, 268, 269, 299,
390
+ 268, 269, 300, 268, 269, 301, 268, 269,
391
+ 302, 268, 269, 303, 292, 268, 269, 304,
392
+ 268, 269, 305, 268, 269, 306, 268, 269,
393
+ 307, 268, 269, 291, 268, 269, 308, 268,
394
+ 269, 309, 268, 269, 310, 268, 269, 311,
395
+ 268, 269, 291, 268, 312, 313, 312, 0,
396
+ 316, 315, 317, 318, 315, 314, 0, 320,
397
+ 321, 319, 0, 320, 319, 316, 322, 320,
398
+ 321, 322, 319, 316, 323, 324, 325, 326,
399
+ 327, 328, 329, 330, 331, 332, 333, 334,
400
+ 335, 331, 336, 323, 0, 76, 337, 75,
401
+ 76, 338, 75, 76, 337, 75, 76, 339,
402
+ 75, 76, 340, 75, 76, 341, 75, 76,
403
+ 342, 75, 76, 343, 75, 76, 344, 75,
404
+ 76, 345, 75, 76, 346, 75, 76, 337,
405
+ 75, 76, 347, 75, 76, 348, 75, 76,
406
+ 349, 75, 76, 350, 75, 76, 351, 75,
407
+ 76, 352, 101, 75, 76, 353, 75, 76,
408
+ 354, 75, 76, 355, 75, 76, 356, 75,
409
+ 76, 357, 75, 76, 101, 75, 76, 358,
410
+ 75, 76, 359, 75, 76, 360, 75, 76,
411
+ 361, 75, 76, 357, 75, 69, 0, 362,
412
+ 0
413
+ ]
414
+
415
+ class << self
416
+ attr_accessor :_lexer_trans_targs
417
+ private :_lexer_trans_targs, :_lexer_trans_targs=
418
+ end
419
+ self._lexer_trans_targs = [
420
+ 0, 2, 4, 4, 5, 15, 17, 31,
421
+ 34, 37, 38, 59, 60, 76, 84, 184,
422
+ 231, 3, 6, 7, 8, 9, 8, 8,
423
+ 9, 8, 10, 10, 10, 11, 10, 10,
424
+ 10, 11, 12, 13, 14, 4, 14, 15,
425
+ 4, 16, 18, 19, 20, 21, 22, 23,
426
+ 24, 25, 26, 27, 28, 29, 30, 267,
427
+ 32, 33, 4, 16, 33, 4, 16, 35,
428
+ 36, 4, 35, 34, 36, 31, 39, 266,
429
+ 40, 41, 42, 41, 42, 42, 4, 43,
430
+ 57, 237, 238, 240, 241, 249, 261, 44,
431
+ 45, 46, 47, 48, 49, 50, 51, 52,
432
+ 53, 54, 55, 56, 4, 58, 4, 4,
433
+ 5, 15, 17, 31, 34, 37, 38, 59,
434
+ 60, 76, 84, 184, 231, 37, 61, 62,
435
+ 63, 64, 65, 66, 67, 68, 69, 68,
436
+ 69, 69, 4, 70, 71, 72, 73, 74,
437
+ 75, 58, 77, 78, 79, 80, 81, 82,
438
+ 83, 85, 86, 87, 88, 89, 90, 137,
439
+ 91, 92, 93, 94, 95, 96, 97, 98,
440
+ 97, 98, 98, 4, 99, 113, 114, 115,
441
+ 117, 118, 126, 132, 100, 101, 102, 103,
442
+ 104, 105, 106, 107, 108, 109, 110, 111,
443
+ 112, 4, 58, 113, 116, 114, 119, 120,
444
+ 121, 122, 123, 124, 125, 127, 128, 129,
445
+ 130, 131, 133, 134, 135, 136, 138, 139,
446
+ 138, 139, 139, 4, 140, 154, 155, 156,
447
+ 159, 160, 168, 179, 141, 142, 143, 144,
448
+ 145, 146, 147, 148, 149, 150, 151, 152,
449
+ 153, 4, 58, 154, 157, 158, 155, 161,
450
+ 162, 163, 164, 165, 166, 167, 169, 170,
451
+ 171, 172, 173, 174, 175, 176, 177, 178,
452
+ 180, 181, 182, 183, 185, 186, 187, 188,
453
+ 189, 190, 191, 192, 191, 192, 192, 4,
454
+ 193, 207, 209, 215, 226, 194, 195, 196,
455
+ 197, 198, 199, 200, 201, 202, 203, 204,
456
+ 205, 206, 4, 208, 58, 210, 211, 212,
457
+ 213, 214, 216, 217, 218, 219, 220, 221,
458
+ 222, 223, 224, 225, 227, 228, 229, 230,
459
+ 231, 232, 233, 235, 236, 234, 232, 233,
460
+ 234, 232, 235, 236, 5, 15, 17, 31,
461
+ 34, 37, 38, 59, 60, 76, 84, 184,
462
+ 231, 57, 239, 237, 242, 243, 244, 245,
463
+ 246, 247, 248, 250, 251, 252, 253, 254,
464
+ 255, 256, 257, 258, 259, 260, 262, 263,
465
+ 264, 265, 0
466
+ ]
467
+
468
+ class << self
469
+ attr_accessor :_lexer_trans_actions
470
+ private :_lexer_trans_actions, :_lexer_trans_actions=
471
+ end
472
+ self._lexer_trans_actions = [
473
+ 43, 0, 0, 54, 3, 1, 0, 29,
474
+ 1, 29, 29, 29, 29, 29, 29, 29,
475
+ 35, 0, 0, 0, 7, 139, 48, 0,
476
+ 102, 9, 5, 45, 134, 45, 0, 33,
477
+ 122, 33, 33, 0, 11, 106, 0, 0,
478
+ 114, 25, 0, 0, 0, 0, 0, 0,
479
+ 0, 0, 0, 0, 0, 0, 0, 0,
480
+ 0, 57, 149, 126, 0, 110, 23, 0,
481
+ 27, 118, 27, 51, 0, 0, 0, 0,
482
+ 0, 57, 144, 0, 54, 0, 72, 33,
483
+ 84, 84, 84, 84, 84, 84, 84, 0,
484
+ 0, 0, 0, 0, 0, 0, 0, 0,
485
+ 0, 0, 0, 0, 15, 15, 31, 130,
486
+ 60, 57, 31, 63, 57, 63, 63, 63,
487
+ 63, 63, 63, 63, 66, 0, 0, 0,
488
+ 0, 0, 0, 0, 0, 57, 144, 0,
489
+ 54, 0, 81, 84, 0, 0, 0, 0,
490
+ 0, 21, 0, 0, 0, 0, 0, 0,
491
+ 0, 0, 0, 0, 0, 0, 0, 0,
492
+ 0, 0, 0, 0, 0, 0, 57, 144,
493
+ 0, 54, 0, 78, 33, 84, 84, 84,
494
+ 84, 84, 84, 84, 0, 0, 0, 0,
495
+ 0, 0, 0, 0, 0, 0, 0, 0,
496
+ 0, 19, 19, 0, 0, 0, 0, 0,
497
+ 0, 0, 0, 0, 0, 0, 0, 0,
498
+ 0, 0, 0, 0, 0, 0, 57, 144,
499
+ 0, 54, 0, 75, 33, 84, 84, 84,
500
+ 84, 84, 84, 84, 0, 0, 0, 0,
501
+ 0, 0, 0, 0, 0, 0, 0, 0,
502
+ 0, 17, 17, 0, 0, 0, 0, 0,
503
+ 0, 0, 0, 0, 0, 0, 0, 0,
504
+ 0, 0, 0, 0, 0, 0, 0, 0,
505
+ 0, 0, 0, 0, 0, 0, 0, 0,
506
+ 0, 0, 57, 144, 0, 54, 0, 69,
507
+ 33, 84, 84, 84, 84, 0, 0, 0,
508
+ 0, 0, 0, 0, 0, 0, 0, 0,
509
+ 0, 0, 13, 0, 13, 0, 0, 0,
510
+ 0, 0, 0, 0, 0, 0, 0, 0,
511
+ 0, 0, 0, 0, 0, 0, 0, 0,
512
+ 0, 0, 37, 37, 54, 37, 87, 0,
513
+ 0, 39, 0, 0, 93, 90, 41, 96,
514
+ 90, 96, 96, 96, 96, 96, 96, 96,
515
+ 99, 0, 0, 0, 0, 0, 0, 0,
516
+ 0, 0, 0, 0, 0, 0, 0, 0,
517
+ 0, 0, 0, 0, 0, 0, 0, 0,
518
+ 0, 0, 0
519
+ ]
520
+
521
+ class << self
522
+ attr_accessor :_lexer_eof_actions
523
+ private :_lexer_eof_actions, :_lexer_eof_actions=
524
+ end
525
+ self._lexer_eof_actions = [
526
+ 0, 43, 43, 43, 43, 43, 43, 43,
527
+ 43, 43, 43, 43, 43, 43, 43, 43,
528
+ 43, 43, 43, 43, 43, 43, 43, 43,
529
+ 43, 43, 43, 43, 43, 43, 43, 43,
530
+ 43, 43, 43, 43, 43, 43, 43, 43,
531
+ 43, 43, 43, 43, 43, 43, 43, 43,
532
+ 43, 43, 43, 43, 43, 43, 43, 43,
533
+ 43, 43, 43, 43, 43, 43, 43, 43,
534
+ 43, 43, 43, 43, 43, 43, 43, 43,
535
+ 43, 43, 43, 43, 43, 43, 43, 43,
536
+ 43, 43, 43, 43, 43, 43, 43, 43,
537
+ 43, 43, 43, 43, 43, 43, 43, 43,
538
+ 43, 43, 43, 43, 43, 43, 43, 43,
539
+ 43, 43, 43, 43, 43, 43, 43, 43,
540
+ 43, 43, 43, 43, 43, 43, 43, 43,
541
+ 43, 43, 43, 43, 43, 43, 43, 43,
542
+ 43, 43, 43, 43, 43, 43, 43, 43,
543
+ 43, 43, 43, 43, 43, 43, 43, 43,
544
+ 43, 43, 43, 43, 43, 43, 43, 43,
545
+ 43, 43, 43, 43, 43, 43, 43, 43,
546
+ 43, 43, 43, 43, 43, 43, 43, 43,
547
+ 43, 43, 43, 43, 43, 43, 43, 43,
548
+ 43, 43, 43, 43, 43, 43, 43, 43,
549
+ 43, 43, 43, 43, 43, 43, 43, 43,
550
+ 43, 43, 43, 43, 43, 43, 43, 43,
551
+ 43, 43, 43, 43, 43, 43, 43, 43,
552
+ 43, 43, 43, 43, 43, 43, 43, 43,
553
+ 43, 43, 43, 43, 43, 43, 43, 43,
554
+ 43, 43, 43, 43, 43, 43, 43, 43,
555
+ 43, 43, 43, 43, 43, 43, 43, 43,
556
+ 43, 43, 43, 43, 43, 43, 43, 43,
557
+ 43, 43, 43, 43, 43, 43, 43, 43,
558
+ 43, 43, 43, 43, 43, 43, 43, 43,
559
+ 43, 43, 43, 43
560
+ ]
561
+
562
+ class << self
563
+ attr_accessor :lexer_start
564
+ end
565
+ self.lexer_start = 1;
566
+ class << self
567
+ attr_accessor :lexer_first_final
568
+ end
569
+ self.lexer_first_final = 267;
570
+ class << self
571
+ attr_accessor :lexer_error
572
+ end
573
+ self.lexer_error = 0;
574
+
575
+ class << self
576
+ attr_accessor :lexer_en_main
577
+ end
578
+ self.lexer_en_main = 1;
577
579
 
578
- # line 130 "ragel/i18n/en_lol.rb.rl"
580
+
581
+ # line 133 "ragel/i18n/en_lol.rb.rl"
579
582
  end
580
-
583
+
581
584
  def scan(data)
582
585
  data = (data + "\n%_FEATURE_END_%").unpack("c*") # Explicit EOF simplifies things considerably
583
586
  eof = pe = data.length
584
-
587
+
585
588
  @line_number = 1
586
589
  @last_newline = 0
587
-
588
-
589
- # line 590 "lib/gherkin/lexer/en_lol.rb"
590
- begin
591
- p ||= 0
592
- pe ||= data.length
593
- cs = lexer_start
594
- end
595
590
 
596
- # line 140 "ragel/i18n/en_lol.rb.rl"
597
-
598
- # line 599 "lib/gherkin/lexer/en_lol.rb"
599
- begin
600
- _klen, _trans, _keys, _acts, _nacts = nil
601
- _goto_level = 0
602
- _resume = 10
603
- _eof_trans = 15
604
- _again = 20
605
- _test_eof = 30
606
- _out = 40
607
- while true
608
- _trigger_goto = false
609
- if _goto_level <= 0
610
- if p == pe
611
- _goto_level = _test_eof
612
- next
613
- end
614
- if cs == 0
615
- _goto_level = _out
616
- next
617
- end
618
- end
619
- if _goto_level <= _resume
620
- _keys = _lexer_key_offsets[cs]
621
- _trans = _lexer_index_offsets[cs]
622
- _klen = _lexer_single_lengths[cs]
623
- _break_match = false
624
-
625
- begin
626
- if _klen > 0
627
- _lower = _keys
628
- _upper = _keys + _klen - 1
629
-
630
- loop do
631
- break if _upper < _lower
632
- _mid = _lower + ( (_upper - _lower) >> 1 )
633
-
634
- if data[p].ord < _lexer_trans_keys[_mid]
635
- _upper = _mid - 1
636
- elsif data[p].ord > _lexer_trans_keys[_mid]
637
- _lower = _mid + 1
638
- else
639
- _trans += (_mid - _keys)
640
- _break_match = true
641
- break
642
- end
643
- end # loop
644
- break if _break_match
645
- _keys += _klen
646
- _trans += _klen
647
- end
648
- _klen = _lexer_range_lengths[cs]
649
- if _klen > 0
650
- _lower = _keys
651
- _upper = _keys + (_klen << 1) - 2
652
- loop do
653
- break if _upper < _lower
654
- _mid = _lower + (((_upper-_lower) >> 1) & ~1)
655
- if data[p].ord < _lexer_trans_keys[_mid]
656
- _upper = _mid - 2
657
- elsif data[p].ord > _lexer_trans_keys[_mid+1]
658
- _lower = _mid + 2
659
- else
660
- _trans += ((_mid - _keys) >> 1)
661
- _break_match = true
662
- break
663
- end
664
- end # loop
665
- break if _break_match
666
- _trans += _klen
667
- end
668
- end while false
669
- _trans = _lexer_indicies[_trans]
670
- cs = _lexer_trans_targs[_trans]
671
- if _lexer_trans_actions[_trans] != 0
672
- _acts = _lexer_trans_actions[_trans]
673
- _nacts = _lexer_actions[_acts]
674
- _acts += 1
675
- while _nacts > 0
676
- _nacts -= 1
677
- _acts += 1
678
- case _lexer_actions[_acts - 1]
679
- when 0 then
680
- # line 11 "ragel/i18n/en_lol.rb.rl"
681
- begin
682
-
683
- @content_start = p
684
- @current_line = @line_number
685
- @start_col = p - @last_newline - "#{@keyword}:".length
686
- end
687
- when 1 then
688
- # line 17 "ragel/i18n/en_lol.rb.rl"
689
- begin
690
-
691
- @current_line = @line_number
692
- @start_col = p - @last_newline
693
- end
694
- when 2 then
695
- # line 22 "ragel/i18n/en_lol.rb.rl"
696
- begin
697
-
698
- @content_start = p
699
- end
700
- when 3 then
701
- # line 26 "ragel/i18n/en_lol.rb.rl"
702
- begin
703
-
704
- @docstring_content_type_start = p
705
- end
706
- when 4 then
707
- # line 29 "ragel/i18n/en_lol.rb.rl"
708
- begin
709
-
710
- @docstring_content_type_end = p
711
- end
712
- when 5 then
713
- # line 33 "ragel/i18n/en_lol.rb.rl"
714
- begin
715
-
716
- con = unindent(@start_col, utf8_pack(data[@content_start...@next_keyword_start-1]).sub(/(\r?\n)?([\t ])*\Z/, '').gsub(/\\"\\"\\"/, '"""'))
717
- con_type = utf8_pack(data[@docstring_content_type_start...@docstring_content_type_end]).strip
718
- @listener.doc_string(con_type, con, @current_line)
719
- end
720
- when 6 then
721
- # line 38 "ragel/i18n/en_lol.rb.rl"
722
- begin
723
-
724
- p = store_keyword_content(:feature, data, p, eof)
725
- end
726
- when 7 then
727
- # line 42 "ragel/i18n/en_lol.rb.rl"
728
- begin
729
-
730
- p = store_keyword_content(:background, data, p, eof)
731
- end
732
- when 8 then
733
- # line 46 "ragel/i18n/en_lol.rb.rl"
734
- begin
735
-
736
- p = store_keyword_content(:scenario, data, p, eof)
737
- end
738
- when 9 then
739
- # line 50 "ragel/i18n/en_lol.rb.rl"
740
- begin
741
-
742
- p = store_keyword_content(:scenario_outline, data, p, eof)
743
- end
744
- when 10 then
745
- # line 54 "ragel/i18n/en_lol.rb.rl"
746
- begin
747
-
748
- p = store_keyword_content(:examples, data, p, eof)
749
- end
750
- when 11 then
751
- # line 58 "ragel/i18n/en_lol.rb.rl"
752
- begin
753
-
754
- con = utf8_pack(data[@content_start...p]).strip
755
- @listener.step(@keyword, con, @current_line)
756
- end
757
- when 12 then
758
- # line 63 "ragel/i18n/en_lol.rb.rl"
759
- begin
760
-
761
- con = utf8_pack(data[@content_start...p]).strip
762
- @listener.comment(con, @line_number)
763
- @keyword_start = nil
764
- end
765
- when 13 then
766
- # line 69 "ragel/i18n/en_lol.rb.rl"
767
- begin
768
-
769
- con = utf8_pack(data[@content_start...p]).strip
770
- @listener.tag(con, @current_line)
771
- @keyword_start = nil
772
- end
773
- when 14 then
774
- # line 75 "ragel/i18n/en_lol.rb.rl"
775
- begin
776
-
777
- @line_number += 1
778
- end
779
- when 15 then
780
- # line 79 "ragel/i18n/en_lol.rb.rl"
781
- begin
782
-
783
- @last_newline = p + 1
784
- end
785
- when 16 then
786
- # line 83 "ragel/i18n/en_lol.rb.rl"
787
- begin
788
-
789
- @keyword_start ||= p
790
- end
791
- when 17 then
792
- # line 87 "ragel/i18n/en_lol.rb.rl"
793
- begin
794
-
795
- @keyword = utf8_pack(data[@keyword_start...p]).sub(/:$/,'')
796
- @keyword_start = nil
797
- end
798
- when 18 then
799
- # line 92 "ragel/i18n/en_lol.rb.rl"
800
- begin
801
-
802
- @next_keyword_start = p
803
- end
804
- when 19 then
805
- # line 96 "ragel/i18n/en_lol.rb.rl"
806
- begin
807
-
808
- p = p - 1
809
- current_row = []
810
- @current_line = @line_number
811
- end
812
- when 20 then
813
- # line 102 "ragel/i18n/en_lol.rb.rl"
814
- begin
815
-
816
- @content_start = p
817
- end
818
- when 21 then
819
- # line 106 "ragel/i18n/en_lol.rb.rl"
820
- begin
821
-
822
- con = utf8_pack(data[@content_start...p]).strip
823
- current_row << con.gsub(/\\\|/, "|").gsub(/\\n/, "\n").gsub(/\\\\/, "\\")
824
- end
825
- when 22 then
826
- # line 111 "ragel/i18n/en_lol.rb.rl"
827
- begin
828
-
829
- @listener.row(current_row, @current_line)
830
- end
831
- when 23 then
832
- # line 115 "ragel/i18n/en_lol.rb.rl"
833
- begin
834
-
835
- if cs < lexer_first_final
836
- content = current_line_content(data, p)
837
- 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])
838
- else
839
- @listener.eof
840
- end
841
- end
842
- # line 843 "lib/gherkin/lexer/en_lol.rb"
843
- end # action switch
844
- end
845
- end
846
- if _trigger_goto
847
- next
848
- end
849
- end
850
- if _goto_level <= _again
851
- if cs == 0
852
- _goto_level = _out
853
- next
854
- end
855
- p += 1
856
- if p != pe
857
- _goto_level = _resume
858
- next
859
- end
860
- end
861
- if _goto_level <= _test_eof
862
- if p == eof
863
- __acts = _lexer_eof_actions[cs]
864
- __nacts = _lexer_actions[__acts]
865
- __acts += 1
866
- while __nacts > 0
867
- __nacts -= 1
868
- __acts += 1
869
- case _lexer_actions[__acts - 1]
870
- when 23 then
871
- # line 115 "ragel/i18n/en_lol.rb.rl"
872
- begin
873
-
874
- if cs < lexer_first_final
875
- content = current_line_content(data, p)
876
- 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])
877
- else
878
- @listener.eof
591
+
592
+ # line 593 "lib/gherkin/lexer/en_lol.rb"
593
+ begin
594
+ p ||= 0
595
+ pe ||= data.length
596
+ cs = lexer_start
597
+ end
598
+
599
+ # line 143 "ragel/i18n/en_lol.rb.rl"
600
+
601
+ # line 602 "lib/gherkin/lexer/en_lol.rb"
602
+ begin
603
+ _klen, _trans, _keys, _acts, _nacts = nil
604
+ _goto_level = 0
605
+ _resume = 10
606
+ _eof_trans = 15
607
+ _again = 20
608
+ _test_eof = 30
609
+ _out = 40
610
+ while true
611
+ _trigger_goto = false
612
+ if _goto_level <= 0
613
+ if p == pe
614
+ _goto_level = _test_eof
615
+ next
616
+ end
617
+ if cs == 0
618
+ _goto_level = _out
619
+ next
620
+ end
621
+ end
622
+ if _goto_level <= _resume
623
+ _keys = _lexer_key_offsets[cs]
624
+ _trans = _lexer_index_offsets[cs]
625
+ _klen = _lexer_single_lengths[cs]
626
+ _break_match = false
627
+
628
+ begin
629
+ if _klen > 0
630
+ _lower = _keys
631
+ _upper = _keys + _klen - 1
632
+
633
+ loop do
634
+ break if _upper < _lower
635
+ _mid = _lower + ( (_upper - _lower) >> 1 )
636
+
637
+ if data[p].ord < _lexer_trans_keys[_mid]
638
+ _upper = _mid - 1
639
+ elsif data[p].ord > _lexer_trans_keys[_mid]
640
+ _lower = _mid + 1
641
+ else
642
+ _trans += (_mid - _keys)
643
+ _break_match = true
644
+ break
645
+ end
646
+ end # loop
647
+ break if _break_match
648
+ _keys += _klen
649
+ _trans += _klen
650
+ end
651
+ _klen = _lexer_range_lengths[cs]
652
+ if _klen > 0
653
+ _lower = _keys
654
+ _upper = _keys + (_klen << 1) - 2
655
+ loop do
656
+ break if _upper < _lower
657
+ _mid = _lower + (((_upper-_lower) >> 1) & ~1)
658
+ if data[p].ord < _lexer_trans_keys[_mid]
659
+ _upper = _mid - 2
660
+ elsif data[p].ord > _lexer_trans_keys[_mid+1]
661
+ _lower = _mid + 2
662
+ else
663
+ _trans += ((_mid - _keys) >> 1)
664
+ _break_match = true
665
+ break
666
+ end
667
+ end # loop
668
+ break if _break_match
669
+ _trans += _klen
670
+ end
671
+ end while false
672
+ _trans = _lexer_indicies[_trans]
673
+ cs = _lexer_trans_targs[_trans]
674
+ if _lexer_trans_actions[_trans] != 0
675
+ _acts = _lexer_trans_actions[_trans]
676
+ _nacts = _lexer_actions[_acts]
677
+ _acts += 1
678
+ while _nacts > 0
679
+ _nacts -= 1
680
+ _acts += 1
681
+ case _lexer_actions[_acts - 1]
682
+ when 0 then
683
+ # line 11 "ragel/i18n/en_lol.rb.rl"
684
+ begin
685
+
686
+ @content_start = p
687
+ @current_line = @line_number
688
+ @start_col = p - @last_newline - "#{@keyword}:".length
689
+ end
690
+ when 1 then
691
+ # line 17 "ragel/i18n/en_lol.rb.rl"
692
+ begin
693
+
694
+ @current_line = @line_number
695
+ @start_col = p - @last_newline
696
+ end
697
+ when 2 then
698
+ # line 22 "ragel/i18n/en_lol.rb.rl"
699
+ begin
700
+
701
+ @content_start = p
702
+ end
703
+ when 3 then
704
+ # line 26 "ragel/i18n/en_lol.rb.rl"
705
+ begin
706
+
707
+ @docstring_content_type_start = p
708
+ end
709
+ when 4 then
710
+ # line 29 "ragel/i18n/en_lol.rb.rl"
711
+ begin
712
+
713
+ @docstring_content_type_end = p
714
+ end
715
+ when 5 then
716
+ # line 33 "ragel/i18n/en_lol.rb.rl"
717
+ begin
718
+
719
+ con = unindent(@start_col, utf8_pack(data[@content_start...@next_keyword_start-1]).sub(/(\r?\n)?([\t ])*\Z/, '').gsub(/\\"\\"\\"/, '"""'))
720
+ con_type = utf8_pack(data[@docstring_content_type_start...@docstring_content_type_end]).strip
721
+ @listener.doc_string(con_type, con, @current_line)
722
+ end
723
+ when 6 then
724
+ # line 38 "ragel/i18n/en_lol.rb.rl"
725
+ begin
726
+
727
+ p = store_keyword_content(:feature, data, p, eof)
728
+ end
729
+ when 7 then
730
+ # line 42 "ragel/i18n/en_lol.rb.rl"
731
+ begin
732
+
733
+ p = store_keyword_content(:background, data, p, eof)
734
+ end
735
+ when 8 then
736
+ # line 46 "ragel/i18n/en_lol.rb.rl"
737
+ begin
738
+
739
+ p = store_keyword_content(:scenario, data, p, eof)
740
+ end
741
+ when 9 then
742
+ # line 50 "ragel/i18n/en_lol.rb.rl"
743
+ begin
744
+
745
+ p = store_keyword_content(:scenario_outline, data, p, eof)
746
+ end
747
+ when 10 then
748
+ # line 54 "ragel/i18n/en_lol.rb.rl"
749
+ begin
750
+
751
+ p = store_keyword_content(:examples, data, p, eof)
752
+ end
753
+ when 11 then
754
+ # line 58 "ragel/i18n/en_lol.rb.rl"
755
+ begin
756
+
757
+ con = utf8_pack(data[@content_start...p]).strip
758
+ @listener.step(@keyword, con, @current_line)
759
+ end
760
+ when 12 then
761
+ # line 63 "ragel/i18n/en_lol.rb.rl"
762
+ begin
763
+
764
+ con = utf8_pack(data[@content_start...p]).strip
765
+ @listener.comment(con, @line_number)
766
+ @keyword_start = nil
767
+ end
768
+ when 13 then
769
+ # line 69 "ragel/i18n/en_lol.rb.rl"
770
+ begin
771
+
772
+ con = utf8_pack(data[@content_start...p]).strip
773
+ @listener.tag(con, @current_line)
774
+ @keyword_start = nil
775
+ end
776
+ when 14 then
777
+ # line 75 "ragel/i18n/en_lol.rb.rl"
778
+ begin
779
+
780
+ @line_number += 1
781
+ end
782
+ when 15 then
783
+ # line 79 "ragel/i18n/en_lol.rb.rl"
784
+ begin
785
+
786
+ @last_newline = p + 1
787
+ end
788
+ when 16 then
789
+ # line 83 "ragel/i18n/en_lol.rb.rl"
790
+ begin
791
+
792
+ @keyword_start ||= p
793
+ end
794
+ when 17 then
795
+ # line 87 "ragel/i18n/en_lol.rb.rl"
796
+ begin
797
+
798
+ @keyword = utf8_pack(data[@keyword_start...p]).sub(/:$/,'')
799
+ @keyword_start = nil
800
+ end
801
+ when 18 then
802
+ # line 92 "ragel/i18n/en_lol.rb.rl"
803
+ begin
804
+
805
+ @next_keyword_start = p
806
+ end
807
+ when 19 then
808
+ # line 96 "ragel/i18n/en_lol.rb.rl"
809
+ begin
810
+
811
+ p = p - 1
812
+ current_row = []
813
+ @current_line = @line_number
814
+ end
815
+ when 20 then
816
+ # line 102 "ragel/i18n/en_lol.rb.rl"
817
+ begin
818
+
819
+ @content_start = p
820
+ end
821
+ when 21 then
822
+ # line 106 "ragel/i18n/en_lol.rb.rl"
823
+ begin
824
+
825
+ con = utf8_pack(data[@content_start...p]).strip
826
+ current_row << con.gsub(/\\\|/, "|").gsub(/\\n/, "\n").gsub(/\\\\/, "\\")
827
+ end
828
+ when 22 then
829
+ # line 111 "ragel/i18n/en_lol.rb.rl"
830
+ begin
831
+
832
+ @listener.row(current_row, @current_line)
833
+ end
834
+ when 23 then
835
+ # line 115 "ragel/i18n/en_lol.rb.rl"
836
+ begin
837
+
838
+ if cs < lexer_first_final
839
+ content = current_line_content(data, p)
840
+ 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])
841
+ else
842
+ @listener.eof
843
+ end
844
+ end
845
+ # line 846 "lib/gherkin/lexer/en_lol.rb"
846
+ end # action switch
847
+ end
848
+ end
849
+ if _trigger_goto
850
+ next
851
+ end
852
+ end
853
+ if _goto_level <= _again
854
+ if cs == 0
855
+ _goto_level = _out
856
+ next
857
+ end
858
+ p += 1
859
+ if p != pe
860
+ _goto_level = _resume
861
+ next
862
+ end
863
+ end
864
+ if _goto_level <= _test_eof
865
+ if p == eof
866
+ __acts = _lexer_eof_actions[cs]
867
+ __nacts = _lexer_actions[__acts]
868
+ __acts += 1
869
+ while __nacts > 0
870
+ __nacts -= 1
871
+ __acts += 1
872
+ case _lexer_actions[__acts - 1]
873
+ when 23 then
874
+ # line 115 "ragel/i18n/en_lol.rb.rl"
875
+ begin
876
+
877
+ if cs < lexer_first_final
878
+ content = current_line_content(data, p)
879
+ 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])
880
+ else
881
+ @listener.eof
882
+ end
883
+ end
884
+ # line 885 "lib/gherkin/lexer/en_lol.rb"
885
+ end # eof action switch
886
+ end
887
+ if _trigger_goto
888
+ next
889
+ end
890
+ end
891
+ end
892
+ if _goto_level <= _out
893
+ break
894
+ end
879
895
  end
880
- end
881
- # line 882 "lib/gherkin/lexer/en_lol.rb"
882
- end # eof action switch
883
- end
884
- if _trigger_goto
885
- next
886
- end
887
- end
888
- end
889
- if _goto_level <= _out
890
- break
891
- end
892
- end
893
- end
894
-
895
- # line 141 "ragel/i18n/en_lol.rb.rl"
896
+ end
897
+
898
+ # line 144 "ragel/i18n/en_lol.rb.rl"
896
899
  end
897
900
 
898
901
  def unindent(startcol, text)
@@ -911,7 +914,7 @@ end
911
914
  ensure
912
915
  @next_keyword_start = nil
913
916
  end
914
-
917
+
915
918
  def current_line_content(data, p)
916
919
  rest = data[@last_newline..-1]
917
920
  utf8_pack(rest[0..rest.index(10)||-1]).strip # 10 is \n