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