regexp_parser 2.4.0 → 2.7.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +98 -42
- data/README.md +46 -30
- data/lib/regexp_parser/expression/base.rb +17 -9
- data/lib/regexp_parser/expression/classes/backreference.rb +19 -2
- data/lib/regexp_parser/expression/classes/{type.rb → character_type.rb} +0 -0
- data/lib/regexp_parser/expression/classes/conditional.rb +8 -0
- data/lib/regexp_parser/expression/classes/escape_sequence.rb +1 -1
- data/lib/regexp_parser/expression/classes/group.rb +10 -0
- data/lib/regexp_parser/expression/classes/keep.rb +2 -0
- data/lib/regexp_parser/expression/classes/root.rb +3 -5
- data/lib/regexp_parser/expression/classes/{property.rb → unicode_property.rb} +1 -0
- data/lib/regexp_parser/expression/methods/construct.rb +43 -0
- data/lib/regexp_parser/expression/methods/human_name.rb +43 -0
- data/lib/regexp_parser/expression/methods/match_length.rb +9 -5
- data/lib/regexp_parser/expression/methods/traverse.rb +6 -3
- data/lib/regexp_parser/expression/quantifier.rb +6 -5
- data/lib/regexp_parser/expression/sequence.rb +6 -21
- data/lib/regexp_parser/expression/shared.rb +20 -3
- data/lib/regexp_parser/expression/subexpression.rb +4 -1
- data/lib/regexp_parser/expression.rb +4 -2
- data/lib/regexp_parser/lexer.rb +61 -29
- data/lib/regexp_parser/parser.rb +36 -26
- data/lib/regexp_parser/scanner/property.rl +1 -1
- data/lib/regexp_parser/scanner/scanner.rl +57 -42
- data/lib/regexp_parser/scanner.rb +873 -823
- data/lib/regexp_parser/syntax/token/escape.rb +1 -1
- data/lib/regexp_parser/syntax/version_lookup.rb +0 -8
- data/lib/regexp_parser/syntax/versions.rb +2 -0
- data/lib/regexp_parser/version.rb +1 -1
- metadata +7 -5
@@ -1,8 +1,8 @@
|
|
1
1
|
# -*- warn-indent:false; -*-
|
2
2
|
|
3
|
-
# line 1 "/Users/
|
3
|
+
# line 1 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
4
4
|
|
5
|
-
# line
|
5
|
+
# line 650 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
6
6
|
|
7
7
|
|
8
8
|
# THIS IS A GENERATED FILE, DO NOT EDIT DIRECTLY
|
@@ -77,23 +77,24 @@ class Regexp::Scanner
|
|
77
77
|
#
|
78
78
|
# This method may raise errors if a syntax error is encountered.
|
79
79
|
# --------------------------------------------------------------------------
|
80
|
-
def self.scan(input_object, options: nil, &block)
|
81
|
-
new.scan(input_object, options: options, &block)
|
80
|
+
def self.scan(input_object, options: nil, collect_tokens: true, &block)
|
81
|
+
new.scan(input_object, options: options, collect_tokens: collect_tokens, &block)
|
82
82
|
end
|
83
83
|
|
84
|
-
def scan(input_object, options: nil, &block)
|
85
|
-
self.
|
84
|
+
def scan(input_object, options: nil, collect_tokens: true, &block)
|
85
|
+
self.collect_tokens = collect_tokens
|
86
|
+
self.literal_run = nil
|
86
87
|
stack = []
|
87
88
|
|
88
89
|
input = input_object.is_a?(Regexp) ? input_object.source : input_object
|
89
90
|
self.free_spacing = free_spacing?(input_object, options)
|
90
91
|
self.spacing_stack = [{:free_spacing => free_spacing, :depth => 0}]
|
91
92
|
|
92
|
-
data = input.unpack("c*")
|
93
|
+
data = input.unpack("c*")
|
93
94
|
eof = data.length
|
94
95
|
|
95
96
|
self.tokens = []
|
96
|
-
self.block =
|
97
|
+
self.block = block
|
97
98
|
|
98
99
|
self.set_depth = 0
|
99
100
|
self.group_depth = 0
|
@@ -101,7 +102,7 @@ class Regexp::Scanner
|
|
101
102
|
self.char_pos = 0
|
102
103
|
|
103
104
|
|
104
|
-
# line
|
105
|
+
# line 105 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner.rb"
|
105
106
|
class << self
|
106
107
|
attr_accessor :_re_scanner_trans_keys
|
107
108
|
private :_re_scanner_trans_keys, :_re_scanner_trans_keys=
|
@@ -113,12 +114,12 @@ self._re_scanner_trans_keys = [
|
|
113
114
|
62, 62, 39, 60, 39, 57,
|
114
115
|
39, 39, 48, 57, 39,
|
115
116
|
57, 39, 57, 48, 57,
|
116
|
-
39, 39,
|
117
|
+
39, 39, 33, 62, 62, 62,
|
117
118
|
48, 57, 48, 62, 43,
|
118
119
|
62, 48, 57, 62, 62,
|
119
120
|
39, 60, 39, 57, 39, 39,
|
120
121
|
48, 57, 39, 57, 39,
|
121
|
-
57, 48, 57,
|
122
|
+
57, 48, 57, 33, 62,
|
122
123
|
62, 62, 48, 57, 48, 62,
|
123
124
|
43, 62, 48, 57, 48,
|
124
125
|
57, 48, 125, 44, 125,
|
@@ -143,15 +144,16 @@ self._re_scanner_trans_keys = [
|
|
143
144
|
44, 57, 68, 119, 80, 112,
|
144
145
|
-62, 125, -128, -65, -128,
|
145
146
|
-65, -128, -65, 38, 38,
|
146
|
-
38, 93, 58, 58,
|
147
|
-
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
152
|
-
|
153
|
-
|
154
|
-
62,
|
147
|
+
38, 93, 58, 58, 48, 120,
|
148
|
+
48, 55, 48, 55, -62,
|
149
|
+
125, -128, -65, -128, -65,
|
150
|
+
-128, -65, 48, 55, 48, 55,
|
151
|
+
77, 77, 45, 45, 0,
|
152
|
+
0, 67, 99, 45, 45,
|
153
|
+
0, 0, 92, 92, 48, 102,
|
154
|
+
39, 60, 39, 57, 49,
|
155
|
+
57, 41, 57, 33, 62,
|
156
|
+
0
|
155
157
|
]
|
156
158
|
|
157
159
|
class << self
|
@@ -161,8 +163,8 @@ end
|
|
161
163
|
self._re_scanner_key_spans = [
|
162
164
|
0, 64, 64, 64, 1, 19, 1, 30,
|
163
165
|
1, 22, 19, 1, 10, 19, 19, 10,
|
164
|
-
1,
|
165
|
-
22, 19, 1, 10, 19, 19, 10,
|
166
|
+
1, 30, 1, 10, 15, 20, 10, 1,
|
167
|
+
22, 19, 1, 10, 19, 19, 10, 30,
|
166
168
|
1, 10, 15, 20, 10, 10, 78, 82,
|
167
169
|
1, 114, 117, 114, 64, 64, 1, 36,
|
168
170
|
36, 64, 64, 1, 1, 1, 1, 1,
|
@@ -171,9 +173,9 @@ self._re_scanner_key_spans = [
|
|
171
173
|
1, 256, 51, 127, 127, 24, 94, 1,
|
172
174
|
1, 94, 94, 1, 21, 21, 21, 58,
|
173
175
|
14, 52, 33, 188, 64, 64, 64, 1,
|
174
|
-
56, 1,
|
175
|
-
8, 1, 1, 0, 33, 1,
|
176
|
-
55, 22, 19, 9, 17,
|
176
|
+
56, 1, 73, 8, 8, 188, 64, 64,
|
177
|
+
64, 8, 8, 1, 1, 0, 33, 1,
|
178
|
+
0, 1, 55, 22, 19, 9, 17, 30
|
177
179
|
]
|
178
180
|
|
179
181
|
class << self
|
@@ -183,19 +185,19 @@ end
|
|
183
185
|
self._re_scanner_index_offsets = [
|
184
186
|
0, 0, 65, 130, 195, 197, 217, 219,
|
185
187
|
250, 252, 275, 295, 297, 308, 328, 348,
|
186
|
-
359, 361,
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
191
|
-
|
192
|
-
|
193
|
-
|
194
|
-
|
195
|
-
|
196
|
-
|
197
|
-
|
198
|
-
|
188
|
+
359, 361, 392, 394, 405, 421, 442, 453,
|
189
|
+
455, 478, 498, 500, 511, 531, 551, 562,
|
190
|
+
593, 595, 606, 622, 643, 654, 665, 744,
|
191
|
+
827, 829, 944, 1062, 1177, 1242, 1307, 1309,
|
192
|
+
1346, 1383, 1448, 1513, 1515, 1517, 1519, 1521,
|
193
|
+
1523, 1525, 1602, 1658, 1714, 1770, 1826, 1944,
|
194
|
+
2062, 2180, 2298, 2416, 2534, 2611, 2613, 2615,
|
195
|
+
2633, 2635, 2892, 2944, 3072, 3200, 3225, 3320,
|
196
|
+
3322, 3324, 3419, 3514, 3516, 3538, 3560, 3582,
|
197
|
+
3641, 3656, 3709, 3743, 3932, 3997, 4062, 4127,
|
198
|
+
4129, 4186, 4188, 4262, 4271, 4280, 4469, 4534,
|
199
|
+
4599, 4664, 4673, 4682, 4684, 4686, 4687, 4721,
|
200
|
+
4723, 4724, 4726, 4782, 4805, 4825, 4835, 4853
|
199
201
|
]
|
200
202
|
|
201
203
|
class << self
|
@@ -233,129 +235,124 @@ self._re_scanner_indicies = [
|
|
233
235
|
7, 8, 7, 10, 9, 9, 9, 9,
|
234
236
|
9, 9, 9, 9, 9, 9, 9, 4,
|
235
237
|
9, 9, 4, 4, 4, 4, 4, 4,
|
236
|
-
4, 4, 4, 4, 9, 9, 9,
|
237
|
-
8, 9, 8, 9,
|
238
|
-
|
239
|
-
|
240
|
-
|
241
|
-
|
242
|
-
|
243
|
-
|
244
|
-
|
245
|
-
|
246
|
-
|
247
|
-
|
248
|
-
|
249
|
-
|
250
|
-
|
251
|
-
|
252
|
-
|
253
|
-
|
254
|
-
|
255
|
-
|
256
|
-
25, 25, 25,
|
257
|
-
|
258
|
-
|
259
|
-
|
260
|
-
25, 25, 25, 25,
|
261
|
-
|
262
|
-
|
263
|
-
|
264
|
-
|
265
|
-
|
266
|
-
|
267
|
-
33,
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
-
|
272
|
-
|
273
|
-
|
274
|
-
33, 33, 33, 33, 33,
|
275
|
-
|
276
|
-
|
277
|
-
|
278
|
-
|
279
|
-
38, 38, 38,
|
280
|
-
|
281
|
-
|
282
|
-
|
283
|
-
|
284
|
-
|
238
|
+
4, 4, 4, 4, 9, 9, 9, 11,
|
239
|
+
8, 9, 8, 9, 13, 12, 12, 12,
|
240
|
+
12, 12, 12, 12, 12, 12, 12, 12,
|
241
|
+
12, 12, 12, 12, 12, 12, 12, 12,
|
242
|
+
12, 14, 12, 16, 15, 15, 15, 15,
|
243
|
+
15, 17, 15, 15, 18, 19, 19, 19,
|
244
|
+
19, 19, 19, 19, 19, 19, 15, 16,
|
245
|
+
15, 20, 19, 19, 19, 19, 19, 19,
|
246
|
+
19, 19, 19, 12, 16, 12, 12, 12,
|
247
|
+
12, 12, 12, 12, 12, 20, 20, 20,
|
248
|
+
20, 20, 20, 20, 20, 20, 20, 12,
|
249
|
+
16, 12, 12, 12, 21, 12, 21, 12,
|
250
|
+
12, 19, 19, 19, 19, 19, 19, 19,
|
251
|
+
19, 19, 19, 12, 20, 20, 20, 20,
|
252
|
+
20, 20, 20, 20, 20, 20, 12, 16,
|
253
|
+
12, 12, 22, 22, 22, 22, 22, 22,
|
254
|
+
22, 22, 22, 22, 22, 23, 22, 22,
|
255
|
+
24, 25, 25, 25, 25, 25, 25, 25,
|
256
|
+
25, 25, 22, 22, 22, 22, 16, 22,
|
257
|
+
16, 22, 26, 25, 25, 25, 25, 25,
|
258
|
+
25, 25, 25, 25, 12, 26, 26, 26,
|
259
|
+
26, 26, 26, 26, 26, 26, 26, 12,
|
260
|
+
12, 12, 12, 16, 12, 27, 12, 27,
|
261
|
+
12, 12, 25, 25, 25, 25, 25, 25,
|
262
|
+
25, 25, 25, 25, 12, 12, 12, 12,
|
263
|
+
16, 12, 26, 26, 26, 26, 26, 26,
|
264
|
+
26, 26, 26, 26, 12, 16, 12, 28,
|
265
|
+
12, 12, 12, 12, 12, 12, 12, 12,
|
266
|
+
12, 12, 12, 12, 12, 12, 12, 12,
|
267
|
+
12, 12, 12, 12, 29, 12, 31, 30,
|
268
|
+
30, 30, 30, 30, 32, 30, 30, 12,
|
269
|
+
33, 33, 33, 33, 33, 33, 33, 33,
|
270
|
+
33, 30, 31, 30, 34, 33, 33, 33,
|
271
|
+
33, 33, 33, 33, 33, 33, 12, 31,
|
272
|
+
12, 12, 12, 12, 12, 12, 12, 12,
|
273
|
+
34, 34, 34, 34, 34, 34, 34, 34,
|
274
|
+
34, 34, 12, 31, 12, 12, 12, 35,
|
275
|
+
12, 35, 12, 12, 33, 33, 33, 33,
|
276
|
+
33, 33, 33, 33, 33, 33, 12, 34,
|
277
|
+
34, 34, 34, 34, 34, 34, 34, 34,
|
278
|
+
34, 12, 12, 36, 36, 36, 36, 36,
|
279
|
+
36, 36, 36, 36, 36, 36, 37, 36,
|
280
|
+
36, 12, 38, 38, 38, 38, 38, 38,
|
281
|
+
38, 38, 38, 36, 36, 36, 36, 31,
|
282
|
+
36, 31, 36, 39, 38, 38, 38, 38,
|
283
|
+
38, 38, 38, 38, 38, 12, 39, 39,
|
284
|
+
39, 39, 39, 39, 39, 39, 39, 39,
|
285
|
+
12, 12, 12, 12, 31, 12, 40, 12,
|
286
|
+
40, 12, 12, 38, 38, 38, 38, 38,
|
287
|
+
38, 38, 38, 38, 38, 12, 12, 12,
|
288
|
+
12, 31, 12, 39, 39, 39, 39, 39,
|
289
|
+
39, 39, 39, 39, 39, 12, 42, 42,
|
290
|
+
42, 42, 42, 42, 42, 42, 42, 42,
|
291
|
+
41, 42, 42, 42, 42, 42, 42, 42,
|
292
|
+
42, 42, 42, 41, 41, 41, 41, 41,
|
293
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
294
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
295
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
296
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
297
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
298
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
299
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
300
|
+
41, 41, 41, 41, 41, 41, 43, 41,
|
301
|
+
42, 41, 41, 41, 44, 44, 44, 44,
|
302
|
+
44, 44, 44, 44, 44, 44, 41, 41,
|
303
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
304
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
305
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
306
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
307
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
308
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
309
|
+
41, 41, 41, 41, 41, 41, 41, 41,
|
285
310
|
41, 41, 41, 41, 41, 41, 41, 41,
|
286
|
-
|
287
|
-
|
288
|
-
|
289
|
-
|
290
|
-
|
291
|
-
|
292
|
-
|
293
|
-
|
294
|
-
|
295
|
-
|
296
|
-
|
297
|
-
|
298
|
-
|
299
|
-
|
300
|
-
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
|
307
|
-
|
308
|
-
|
309
|
-
|
310
|
-
|
311
|
-
|
312
|
-
|
313
|
-
|
314
|
-
|
315
|
-
|
316
|
-
|
317
|
-
|
318
|
-
46, 46, 46, 46, 46,
|
319
|
-
46, 46, 46, 46, 46, 46, 46, 46,
|
320
|
-
46, 46,
|
321
|
-
|
322
|
-
|
323
|
-
|
324
|
-
|
325
|
-
|
326
|
-
46, 46, 46, 46,
|
327
|
-
|
328
|
-
|
329
|
-
|
330
|
-
46,
|
331
|
-
46, 46, 45, 45, 45, 45, 46, 45,
|
332
|
-
46, 46, 46, 46, 46, 46, 46, 46,
|
333
|
-
46, 46, 46, 46, 46, 46, 46, 46,
|
334
|
-
46, 46, 46, 46, 46, 46, 46, 46,
|
335
|
-
46, 46, 45, 45, 48, 45, 46, 46,
|
336
|
-
46, 46, 46, 45, 45, 45, 45, 45,
|
337
|
-
45, 45, 45, 45, 45, 45, 45, 45,
|
338
|
-
45, 45, 45, 45, 45, 46, 45, 45,
|
339
|
-
45, 45, 45, 45, 45, 45, 45, 45,
|
340
|
-
45, 45, 46, 46, 45, 46, 46, 46,
|
341
|
-
46, 46, 46, 46, 46, 46, 46, 45,
|
342
|
-
45, 45, 46, 45, 45, 45, 46, 46,
|
343
|
-
46, 46, 46, 46, 46, 46, 46, 46,
|
344
|
-
46, 46, 46, 46, 46, 46, 46, 46,
|
345
|
-
46, 46, 46, 46, 46, 46, 46, 46,
|
346
|
-
45, 45, 45, 45, 46, 45, 46, 46,
|
347
|
-
46, 46, 46, 46, 46, 46, 46, 46,
|
348
|
-
46, 46, 46, 46, 46, 46, 46, 46,
|
349
|
-
46, 46, 46, 46, 46, 46, 46, 46,
|
350
|
-
45, 50, 50, 50, 50, 50, 50, 50,
|
351
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
352
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
353
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
354
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
355
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
356
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
357
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
358
|
-
50, 49, 51, 51, 51, 51, 51, 51,
|
311
|
+
41, 43, 41, 45, 46, 47, 47, 47,
|
312
|
+
47, 47, 46, 46, 46, 46, 46, 46,
|
313
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
314
|
+
46, 46, 46, 46, 47, 46, 46, 46,
|
315
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
316
|
+
46, 47, 47, 46, 47, 47, 47, 47,
|
317
|
+
47, 47, 47, 47, 47, 47, 46, 46,
|
318
|
+
46, 47, 46, 46, 46, 47, 47, 47,
|
319
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
320
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
321
|
+
47, 47, 47, 47, 47, 47, 47, 46,
|
322
|
+
46, 46, 48, 47, 46, 47, 47, 47,
|
323
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
324
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
325
|
+
47, 47, 47, 47, 47, 47, 47, 46,
|
326
|
+
47, 47, 47, 47, 47, 46, 46, 46,
|
327
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
328
|
+
46, 46, 46, 46, 46, 46, 46, 47,
|
329
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
330
|
+
46, 46, 46, 46, 47, 47, 46, 47,
|
331
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
332
|
+
47, 46, 46, 46, 47, 46, 46, 46,
|
333
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
334
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
335
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
336
|
+
47, 47, 46, 46, 46, 46, 47, 46,
|
337
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
338
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
339
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
340
|
+
47, 47, 46, 46, 49, 46, 47, 47,
|
341
|
+
47, 47, 47, 46, 46, 46, 46, 46,
|
342
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
343
|
+
46, 46, 46, 46, 46, 47, 46, 46,
|
344
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
345
|
+
46, 46, 47, 47, 46, 47, 47, 47,
|
346
|
+
47, 47, 47, 47, 47, 47, 47, 46,
|
347
|
+
46, 46, 47, 46, 46, 46, 47, 47,
|
348
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
349
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
350
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
351
|
+
46, 46, 46, 46, 47, 46, 47, 47,
|
352
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
353
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
354
|
+
47, 47, 47, 47, 47, 47, 47, 47,
|
355
|
+
46, 51, 51, 51, 51, 51, 51, 51,
|
359
356
|
51, 51, 51, 51, 51, 51, 51, 51,
|
360
357
|
51, 51, 51, 51, 51, 51, 51, 51,
|
361
358
|
51, 51, 51, 51, 51, 51, 51, 51,
|
@@ -363,25 +360,24 @@ self._re_scanner_indicies = [
|
|
363
360
|
51, 51, 51, 51, 51, 51, 51, 51,
|
364
361
|
51, 51, 51, 51, 51, 51, 51, 51,
|
365
362
|
51, 51, 51, 51, 51, 51, 51, 51,
|
366
|
-
51,
|
367
|
-
|
368
|
-
|
369
|
-
|
370
|
-
|
371
|
-
|
372
|
-
|
373
|
-
|
374
|
-
|
375
|
-
|
376
|
-
|
377
|
-
|
378
|
-
|
379
|
-
|
380
|
-
|
381
|
-
|
382
|
-
|
383
|
-
|
384
|
-
61, 61, 61, 61, 61, 61, 61, 61,
|
363
|
+
51, 50, 52, 52, 52, 52, 52, 52,
|
364
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
365
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
366
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
367
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
368
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
369
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
370
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
371
|
+
52, 52, 50, 54, 53, 57, 56, 56,
|
372
|
+
56, 56, 56, 56, 56, 56, 56, 56,
|
373
|
+
56, 56, 56, 56, 56, 56, 56, 56,
|
374
|
+
56, 56, 56, 56, 56, 56, 56, 56,
|
375
|
+
56, 56, 56, 56, 56, 56, 58, 56,
|
376
|
+
58, 56, 57, 56, 56, 56, 56, 56,
|
377
|
+
56, 56, 56, 56, 56, 56, 56, 56,
|
378
|
+
56, 56, 56, 56, 56, 56, 56, 56,
|
379
|
+
56, 56, 56, 56, 56, 56, 56, 56,
|
380
|
+
56, 56, 56, 58, 56, 59, 56, 61,
|
385
381
|
61, 61, 61, 61, 61, 61, 61, 61,
|
386
382
|
61, 61, 61, 61, 61, 61, 61, 61,
|
387
383
|
61, 61, 61, 61, 61, 61, 61, 61,
|
@@ -389,206 +385,198 @@ self._re_scanner_indicies = [
|
|
389
385
|
61, 61, 61, 61, 61, 61, 61, 61,
|
390
386
|
61, 61, 61, 61, 61, 61, 61, 61,
|
391
387
|
61, 61, 61, 61, 61, 61, 61, 61,
|
392
|
-
|
393
|
-
|
394
|
-
|
395
|
-
|
396
|
-
|
397
|
-
|
398
|
-
|
399
|
-
|
400
|
-
|
401
|
-
|
402
|
-
|
403
|
-
73,
|
404
|
-
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
410
|
-
|
411
|
-
|
412
|
-
|
413
|
-
75,
|
414
|
-
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
76,
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
77,
|
428
|
-
|
429
|
-
|
430
|
-
|
431
|
-
|
432
|
-
|
433
|
-
|
434
|
-
|
435
|
-
|
436
|
-
|
437
|
-
|
438
|
-
|
439
|
-
|
440
|
-
|
441
|
-
|
442
|
-
|
443
|
-
|
444
|
-
|
445
|
-
|
446
|
-
|
447
|
-
|
448
|
-
|
449
|
-
|
450
|
-
|
451
|
-
|
452
|
-
|
453
|
-
|
454
|
-
|
455
|
-
|
456
|
-
|
457
|
-
|
458
|
-
|
459
|
-
|
460
|
-
|
461
|
-
|
462
|
-
|
463
|
-
|
464
|
-
|
465
|
-
|
466
|
-
80, 80, 80, 80, 80, 80,
|
467
|
-
|
468
|
-
|
469
|
-
|
470
|
-
|
471
|
-
|
472
|
-
|
473
|
-
|
474
|
-
|
475
|
-
|
476
|
-
|
477
|
-
|
478
|
-
|
479
|
-
|
480
|
-
|
481
|
-
81, 81, 81, 81,
|
482
|
-
|
483
|
-
|
484
|
-
|
485
|
-
|
486
|
-
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
|
492
|
-
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
82, 82,
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
519
|
-
|
388
|
+
61, 61, 61, 61, 61, 61, 61, 60,
|
389
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
390
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
391
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
392
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
393
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
394
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
395
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
396
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
397
|
+
60, 63, 46, 65, 64, 67, 64, 68,
|
398
|
+
46, 70, 69, 72, 69, 73, 73, 73,
|
399
|
+
73, 73, 73, 73, 73, 73, 73, 46,
|
400
|
+
46, 46, 46, 46, 46, 46, 73, 73,
|
401
|
+
73, 73, 73, 73, 46, 46, 46, 46,
|
402
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
403
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
404
|
+
46, 46, 46, 46, 46, 46, 73, 73,
|
405
|
+
73, 73, 73, 73, 46, 46, 46, 46,
|
406
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
407
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
408
|
+
74, 46, 75, 75, 75, 75, 75, 75,
|
409
|
+
75, 75, 75, 75, 46, 46, 46, 46,
|
410
|
+
46, 46, 46, 75, 75, 75, 75, 75,
|
411
|
+
75, 46, 46, 46, 46, 46, 46, 46,
|
412
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
413
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
414
|
+
46, 46, 46, 75, 75, 75, 75, 75,
|
415
|
+
75, 46, 76, 76, 76, 76, 76, 76,
|
416
|
+
76, 76, 76, 76, 46, 46, 46, 46,
|
417
|
+
46, 46, 46, 76, 76, 76, 76, 76,
|
418
|
+
76, 46, 46, 46, 46, 46, 46, 46,
|
419
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
420
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
421
|
+
46, 46, 46, 76, 76, 76, 76, 76,
|
422
|
+
76, 46, 77, 77, 77, 77, 77, 77,
|
423
|
+
77, 77, 77, 77, 46, 46, 46, 46,
|
424
|
+
46, 46, 46, 77, 77, 77, 77, 77,
|
425
|
+
77, 46, 46, 46, 46, 46, 46, 46,
|
426
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
427
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
428
|
+
46, 46, 46, 77, 77, 77, 77, 77,
|
429
|
+
77, 46, 78, 78, 78, 78, 78, 78,
|
430
|
+
78, 78, 78, 78, 46, 46, 46, 46,
|
431
|
+
46, 46, 46, 78, 78, 78, 78, 78,
|
432
|
+
78, 46, 46, 46, 46, 46, 46, 46,
|
433
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
434
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
435
|
+
46, 46, 46, 78, 78, 78, 78, 78,
|
436
|
+
78, 46, 74, 74, 74, 74, 74, 46,
|
437
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
438
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
439
|
+
46, 74, 46, 46, 46, 46, 46, 46,
|
440
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
441
|
+
46, 79, 79, 79, 79, 79, 79, 79,
|
442
|
+
79, 79, 79, 46, 46, 46, 46, 46,
|
443
|
+
46, 46, 79, 79, 79, 79, 79, 79,
|
444
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
445
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
446
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
447
|
+
46, 46, 79, 79, 79, 79, 79, 79,
|
448
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
449
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
450
|
+
46, 46, 46, 46, 46, 46, 77, 46,
|
451
|
+
74, 74, 74, 74, 74, 46, 46, 46,
|
452
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
453
|
+
46, 46, 46, 46, 46, 46, 46, 74,
|
454
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
455
|
+
46, 46, 46, 46, 46, 46, 46, 80,
|
456
|
+
80, 80, 80, 80, 80, 80, 80, 80,
|
457
|
+
80, 46, 46, 46, 46, 46, 46, 46,
|
458
|
+
80, 80, 80, 80, 80, 80, 46, 46,
|
459
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
460
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
461
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
462
|
+
80, 80, 80, 80, 80, 80, 46, 46,
|
463
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
464
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
465
|
+
46, 46, 46, 46, 77, 46, 74, 74,
|
466
|
+
74, 74, 74, 46, 46, 46, 46, 46,
|
467
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
468
|
+
46, 46, 46, 46, 46, 74, 46, 46,
|
469
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
470
|
+
46, 46, 46, 46, 46, 81, 81, 81,
|
471
|
+
81, 81, 81, 81, 81, 81, 81, 46,
|
472
|
+
46, 46, 46, 46, 46, 46, 81, 81,
|
473
|
+
81, 81, 81, 81, 46, 46, 46, 46,
|
474
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
475
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
476
|
+
46, 46, 46, 46, 46, 46, 81, 81,
|
477
|
+
81, 81, 81, 81, 46, 46, 46, 46,
|
478
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
479
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
480
|
+
46, 46, 77, 46, 74, 74, 74, 74,
|
481
|
+
74, 46, 46, 46, 46, 46, 46, 46,
|
482
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
483
|
+
46, 46, 46, 74, 46, 46, 46, 46,
|
484
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
485
|
+
46, 46, 46, 82, 82, 82, 82, 82,
|
486
|
+
82, 82, 82, 82, 82, 46, 46, 46,
|
487
|
+
46, 46, 46, 46, 82, 82, 82, 82,
|
488
|
+
82, 82, 46, 46, 46, 46, 46, 46,
|
489
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
490
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
491
|
+
46, 46, 46, 46, 82, 82, 82, 82,
|
492
|
+
82, 82, 46, 46, 46, 46, 46, 46,
|
493
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
494
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
495
|
+
77, 46, 74, 74, 74, 74, 74, 46,
|
496
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
497
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
498
|
+
46, 74, 46, 46, 46, 46, 46, 46,
|
499
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
500
|
+
46, 83, 83, 83, 83, 83, 83, 83,
|
501
|
+
83, 83, 83, 46, 46, 46, 46, 46,
|
502
|
+
46, 46, 83, 83, 83, 83, 83, 83,
|
503
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
504
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
505
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
506
|
+
46, 46, 83, 83, 83, 83, 83, 83,
|
507
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
508
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
509
|
+
46, 46, 46, 46, 46, 46, 77, 46,
|
510
|
+
74, 74, 74, 74, 74, 46, 46, 46,
|
511
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
512
|
+
46, 46, 46, 46, 46, 46, 46, 74,
|
513
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
514
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
515
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
516
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
517
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
518
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
519
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
520
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
521
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
522
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
523
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
524
|
+
46, 46, 46, 46, 77, 46, 85, 85,
|
525
|
+
85, 85, 85, 85, 85, 85, 85, 85,
|
526
|
+
84, 84, 84, 84, 84, 84, 84, 85,
|
527
|
+
85, 85, 85, 85, 85, 84, 84, 84,
|
528
|
+
84, 84, 84, 84, 84, 84, 84, 84,
|
529
|
+
84, 84, 84, 84, 84, 84, 84, 84,
|
530
|
+
84, 84, 84, 84, 84, 84, 84, 85,
|
531
|
+
85, 85, 85, 85, 85, 84, 84, 84,
|
520
532
|
84, 84, 84, 84, 84, 84, 84, 84,
|
521
|
-
|
522
|
-
84,
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
45, 45, 45, 45, 45, 45, 45, 45,
|
535
|
-
45, 45, 45, 45, 45, 45, 45, 45,
|
536
|
-
45, 45, 45, 45, 45, 45, 45, 45,
|
537
|
-
45, 45, 45, 45, 45, 45, 45, 45,
|
538
|
-
45, 45, 45, 45, 45, 45, 45, 45,
|
539
|
-
45, 45, 45, 45, 45, 45, 45, 45,
|
540
|
-
45, 45, 45, 45, 45, 2, 2, 2,
|
533
|
+
84, 84, 84, 84, 84, 84, 84, 84,
|
534
|
+
84, 46, 84, 88, 87, 89, 86, 89,
|
535
|
+
86, 86, 86, 86, 86, 86, 90, 90,
|
536
|
+
90, 90, 90, 90, 90, 90, 90, 90,
|
537
|
+
86, 88, 91, 46, 46, 46, 46, 46,
|
538
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
539
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
540
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
541
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
542
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
543
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
544
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
545
|
+
46, 46, 46, 46, 46, 2, 2, 2,
|
541
546
|
2, 2, 2, 2, 2, 2, 2, 2,
|
542
547
|
2, 2, 2, 2, 2, 2, 2, 2,
|
543
548
|
2, 2, 2, 2, 2, 2, 2, 2,
|
544
549
|
2, 2, 2, 3, 3, 3, 3, 3,
|
545
550
|
3, 3, 3, 3, 3, 3, 3, 3,
|
546
|
-
3, 3, 3,
|
547
|
-
|
548
|
-
|
549
|
-
|
550
|
-
|
551
|
-
|
552
|
-
|
553
|
-
|
554
|
-
|
555
|
-
|
556
|
-
|
557
|
-
|
558
|
-
|
559
|
-
|
560
|
-
|
561
|
-
|
562
|
-
|
563
|
-
|
564
|
-
|
551
|
+
3, 3, 3, 92, 92, 92, 92, 92,
|
552
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
553
|
+
46, 46, 46, 46, 93, 93, 93, 93,
|
554
|
+
93, 93, 93, 93, 94, 94, 94, 94,
|
555
|
+
94, 93, 93, 93, 93, 93, 93, 93,
|
556
|
+
93, 93, 93, 93, 93, 93, 93, 93,
|
557
|
+
93, 93, 93, 95, 96, 96, 97, 98,
|
558
|
+
96, 96, 96, 99, 100, 101, 102, 96,
|
559
|
+
96, 103, 96, 96, 96, 96, 96, 96,
|
560
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
561
|
+
96, 96, 104, 96, 96, 96, 96, 96,
|
562
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
563
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
564
|
+
96, 96, 96, 96, 96, 96, 105, 106,
|
565
|
+
107, 108, 96, 96, 96, 96, 96, 96,
|
566
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
567
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
568
|
+
96, 96, 96, 96, 96, 96, 109, 110,
|
569
|
+
107, 96, 93, 96, 2, 2, 2, 2,
|
565
570
|
2, 2, 2, 2, 2, 2, 2, 2,
|
566
571
|
2, 2, 2, 2, 2, 2, 2, 2,
|
567
572
|
2, 2, 2, 2, 2, 2, 2, 2,
|
568
573
|
2, 2, 3, 3, 3, 3, 3, 3,
|
569
574
|
3, 3, 3, 3, 3, 3, 3, 3,
|
570
|
-
3, 3,
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
576
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
577
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
578
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
579
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
580
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
581
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
582
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
583
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
584
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
585
|
-
110, 110, 110, 110, 110, 110, 110, 110,
|
586
|
-
110, 110, 110, 110, 110, 110, 92, 110,
|
587
|
-
92, 92, 92, 92, 92, 92, 92, 92,
|
588
|
-
93, 93, 93, 93, 93, 92, 92, 92,
|
589
|
-
92, 92, 92, 92, 92, 92, 92, 92,
|
590
|
-
92, 92, 92, 92, 92, 92, 92, 94,
|
591
|
-
111, 111, 111, 111, 111, 111, 111, 111,
|
575
|
+
3, 3, 92, 92, 92, 92, 92, 111,
|
576
|
+
93, 93, 93, 93, 93, 93, 93, 93,
|
577
|
+
93, 93, 93, 93, 93, 93, 93, 93,
|
578
|
+
93, 93, 93, 93, 93, 93, 93, 93,
|
579
|
+
93, 93, 93, 93, 93, 93, 93, 111,
|
592
580
|
111, 111, 111, 111, 111, 111, 111, 111,
|
593
581
|
111, 111, 111, 111, 111, 111, 111, 111,
|
594
582
|
111, 111, 111, 111, 111, 111, 111, 111,
|
@@ -599,47 +587,64 @@ self._re_scanner_indicies = [
|
|
599
587
|
111, 111, 111, 111, 111, 111, 111, 111,
|
600
588
|
111, 111, 111, 111, 111, 111, 111, 111,
|
601
589
|
111, 111, 111, 111, 111, 111, 111, 111,
|
602
|
-
111, 111, 111, 111, 111, 111, 92, 111,
|
603
|
-
94, 94, 94, 94, 94, 111, 111, 111,
|
604
590
|
111, 111, 111, 111, 111, 111, 111, 111,
|
605
|
-
111, 111, 111, 111, 111, 111,
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
|
615
|
-
|
616
|
-
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
|
632
|
-
|
633
|
-
|
634
|
-
|
635
|
-
|
636
|
-
|
637
|
-
|
638
|
-
|
639
|
-
|
640
|
-
|
641
|
-
|
642
|
-
|
591
|
+
111, 111, 111, 111, 111, 111, 93, 111,
|
592
|
+
93, 93, 93, 93, 93, 93, 93, 93,
|
593
|
+
94, 94, 94, 94, 94, 93, 93, 93,
|
594
|
+
93, 93, 93, 93, 93, 93, 93, 93,
|
595
|
+
93, 93, 93, 93, 93, 93, 93, 95,
|
596
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
597
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
598
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
599
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
600
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
601
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
602
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
603
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
604
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
605
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
606
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
607
|
+
112, 112, 112, 112, 112, 112, 93, 112,
|
608
|
+
95, 95, 95, 95, 95, 112, 112, 112,
|
609
|
+
112, 112, 112, 112, 112, 112, 112, 112,
|
610
|
+
112, 112, 112, 112, 112, 112, 112, 95,
|
611
|
+
112, 96, 96, 111, 111, 96, 96, 96,
|
612
|
+
111, 111, 111, 111, 96, 96, 111, 96,
|
613
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
614
|
+
96, 96, 96, 96, 96, 96, 96, 111,
|
615
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
616
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
617
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
618
|
+
96, 96, 96, 111, 111, 111, 111, 96,
|
619
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
620
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
621
|
+
96, 96, 96, 96, 96, 96, 96, 96,
|
622
|
+
96, 96, 96, 111, 111, 111, 96, 111,
|
623
|
+
114, 97, 116, 115, 10, 118, 5, 118,
|
624
|
+
118, 118, 119, 120, 117, 118, 118, 118,
|
625
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
626
|
+
118, 118, 118, 118, 118, 8, 118, 121,
|
627
|
+
10, 8, 118, 118, 118, 118, 118, 118,
|
628
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
629
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
630
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
631
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
632
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
633
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
634
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
635
|
+
118, 8, 118, 117, 118, 117, 118, 118,
|
636
|
+
118, 117, 117, 117, 118, 118, 118, 118,
|
637
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
638
|
+
118, 118, 118, 118, 122, 118, 117, 117,
|
639
|
+
117, 118, 118, 118, 118, 118, 118, 118,
|
640
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
641
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
642
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
643
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
644
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
645
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
646
|
+
118, 118, 118, 118, 118, 118, 118, 118,
|
647
|
+
117, 118, 8, 9, 125, 124, 124, 124,
|
643
648
|
124, 124, 124, 124, 124, 124, 124, 124,
|
644
649
|
124, 124, 124, 124, 124, 124, 124, 124,
|
645
650
|
125, 124, 127, 126, 126, 126, 126, 126,
|
@@ -655,59 +660,59 @@ self._re_scanner_indicies = [
|
|
655
660
|
130, 130, 130, 130, 133, 130, 130, 130,
|
656
661
|
134, 130, 130, 130, 130, 130, 130, 130,
|
657
662
|
130, 130, 130, 130, 130, 130, 130, 131,
|
658
|
-
130, 136, 135, 135, 135,
|
659
|
-
|
660
|
-
137,
|
661
|
-
|
662
|
-
|
663
|
-
|
664
|
-
137,
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
670
|
-
|
663
|
+
130, 136, 135, 135, 135, 44, 44, 44,
|
664
|
+
44, 44, 44, 44, 44, 44, 44, 135,
|
665
|
+
137, 46, 46, 46, 137, 46, 46, 46,
|
666
|
+
46, 46, 46, 46, 46, 46, 137, 137,
|
667
|
+
46, 46, 46, 137, 137, 46, 46, 46,
|
668
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
669
|
+
137, 46, 46, 46, 137, 46, 46, 46,
|
670
|
+
46, 46, 46, 46, 46, 46, 46, 137,
|
671
|
+
46, 46, 46, 137, 46, 138, 46, 46,
|
672
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
673
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
674
|
+
46, 46, 46, 46, 46, 46, 46, 46,
|
675
|
+
46, 46, 46, 46, 46, 138, 46, 139,
|
671
676
|
139, 139, 139, 139, 139, 139, 139, 139,
|
672
677
|
139, 139, 139, 139, 139, 139, 139, 139,
|
673
678
|
139, 139, 139, 139, 139, 139, 139, 139,
|
674
679
|
139, 139, 139, 139, 139, 140, 140, 140,
|
675
680
|
140, 140, 140, 140, 140, 140, 140, 140,
|
676
681
|
140, 140, 140, 140, 140, 141, 141, 141,
|
677
|
-
141, 141,
|
678
|
-
|
679
|
-
|
680
|
-
|
681
|
-
|
682
|
-
|
683
|
-
|
684
|
-
142,
|
685
|
-
|
686
|
-
|
687
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
688
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
689
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
690
|
-
145, 146, 147, 148, 50, 50, 50, 50,
|
691
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
692
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
693
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
694
|
-
142, 142, 142, 50, 50, 50, 50, 50,
|
695
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
696
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
697
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
698
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
699
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
700
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
701
|
-
50, 50, 50, 50, 50, 50, 50, 50,
|
702
|
-
50, 50, 50, 50, 149, 51, 51, 51,
|
682
|
+
141, 141, 51, 51, 51, 51, 51, 51,
|
683
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
684
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
685
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
686
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
687
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
688
|
+
51, 142, 51, 143, 51, 142, 142, 142,
|
689
|
+
142, 51, 144, 142, 51, 51, 51, 51,
|
690
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
691
|
+
51, 51, 51, 51, 142, 51, 51, 51,
|
703
692
|
51, 51, 51, 51, 51, 51, 51, 51,
|
704
693
|
51, 51, 51, 51, 51, 51, 51, 51,
|
705
694
|
51, 51, 51, 51, 51, 51, 51, 51,
|
695
|
+
145, 146, 147, 148, 51, 51, 51, 51,
|
706
696
|
51, 51, 51, 51, 51, 51, 51, 51,
|
707
697
|
51, 51, 51, 51, 51, 51, 51, 51,
|
708
698
|
51, 51, 51, 51, 51, 51, 51, 51,
|
699
|
+
142, 142, 142, 51, 51, 51, 51, 51,
|
709
700
|
51, 51, 51, 51, 51, 51, 51, 51,
|
710
|
-
51, 51, 51, 51, 51,
|
701
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
702
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
703
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
704
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
705
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
706
|
+
51, 51, 51, 51, 51, 51, 51, 51,
|
707
|
+
51, 51, 51, 51, 149, 52, 52, 52,
|
708
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
709
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
710
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
711
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
712
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
713
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
714
|
+
52, 52, 52, 52, 52, 52, 52, 52,
|
715
|
+
52, 52, 52, 52, 52, 149, 150, 150,
|
711
716
|
150, 150, 150, 150, 150, 150, 150, 150,
|
712
717
|
150, 150, 150, 150, 150, 150, 150, 150,
|
713
718
|
150, 150, 150, 150, 150, 150, 150, 150,
|
@@ -723,88 +728,94 @@ self._re_scanner_indicies = [
|
|
723
728
|
152, 152, 152, 152, 152, 152, 152, 152,
|
724
729
|
152, 152, 152, 152, 152, 152, 152, 152,
|
725
730
|
152, 152, 152, 152, 152, 152, 152, 152,
|
726
|
-
154, 152,
|
727
|
-
|
728
|
-
157,
|
729
|
-
|
730
|
-
157,
|
731
|
-
157,
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
159, 159, 159, 159, 159,
|
736
|
-
|
737
|
-
|
738
|
-
|
739
|
-
|
740
|
-
|
741
|
-
|
742
|
-
|
743
|
-
|
744
|
-
|
745
|
-
|
746
|
-
|
747
|
-
|
748
|
-
164, 165, 165, 60, 60, 60, 60, 60,
|
749
|
-
162, 60, 45, 45, 166, 167, 60, 60,
|
750
|
-
45, 167, 60, 60, 45, 60, 168, 60,
|
751
|
-
60, 169, 60, 167, 167, 60, 60, 60,
|
752
|
-
167, 167, 60, 45, 162, 162, 162, 162,
|
753
|
-
60, 60, 170, 170, 62, 167, 170, 170,
|
754
|
-
60, 167, 60, 60, 60, 60, 60, 170,
|
755
|
-
60, 169, 60, 170, 167, 170, 171, 170,
|
756
|
-
167, 172, 60, 45, 162, 162, 162, 60,
|
757
|
-
60, 60, 60, 60, 60, 60, 60, 60,
|
758
|
-
60, 60, 60, 60, 60, 60, 60, 60,
|
759
|
-
60, 60, 60, 60, 60, 60, 60, 60,
|
760
|
-
60, 60, 60, 60, 60, 60, 60, 60,
|
761
|
-
60, 60, 60, 60, 60, 60, 60, 60,
|
762
|
-
60, 60, 60, 60, 60, 60, 60, 60,
|
763
|
-
60, 60, 60, 60, 60, 60, 60, 60,
|
764
|
-
60, 60, 60, 60, 60, 60, 60, 60,
|
765
|
-
173, 61, 61, 61, 61, 61, 61, 61,
|
731
|
+
154, 152, 56, 156, 158, 158, 158, 158,
|
732
|
+
158, 158, 158, 158, 157, 157, 157, 157,
|
733
|
+
157, 157, 157, 157, 157, 157, 157, 159,
|
734
|
+
159, 157, 157, 157, 159, 157, 157, 157,
|
735
|
+
157, 159, 157, 157, 159, 157, 157, 159,
|
736
|
+
157, 157, 157, 159, 157, 157, 157, 159,
|
737
|
+
159, 159, 157, 157, 157, 159, 159, 159,
|
738
|
+
159, 159, 159, 157, 159, 157, 157, 157,
|
739
|
+
157, 157, 159, 157, 159, 157, 159, 159,
|
740
|
+
159, 159, 159, 159, 159, 157, 161, 161,
|
741
|
+
161, 161, 161, 161, 161, 161, 160, 162,
|
742
|
+
162, 162, 162, 162, 162, 162, 162, 160,
|
743
|
+
163, 163, 163, 163, 163, 163, 163, 163,
|
744
|
+
163, 163, 163, 163, 163, 163, 163, 163,
|
745
|
+
163, 163, 163, 163, 163, 163, 163, 163,
|
746
|
+
163, 163, 163, 163, 163, 163, 164, 164,
|
747
|
+
164, 164, 164, 164, 164, 164, 164, 164,
|
748
|
+
164, 164, 164, 164, 164, 164, 165, 165,
|
749
|
+
165, 165, 165, 61, 61, 61, 61, 61,
|
750
|
+
61, 61, 61, 61, 61, 61, 61, 61,
|
751
|
+
61, 61, 61, 61, 61, 61, 61, 61,
|
752
|
+
61, 61, 61, 61, 61, 61, 61, 61,
|
766
753
|
61, 61, 61, 61, 61, 61, 61, 61,
|
767
754
|
61, 61, 61, 61, 61, 61, 61, 61,
|
755
|
+
61, 61, 166, 61, 61, 61, 166, 166,
|
756
|
+
166, 166, 61, 61, 166, 61, 167, 168,
|
757
|
+
168, 168, 168, 168, 168, 168, 169, 169,
|
758
|
+
61, 61, 61, 61, 61, 166, 61, 46,
|
759
|
+
46, 170, 171, 61, 61, 46, 171, 61,
|
760
|
+
61, 46, 61, 172, 61, 61, 173, 61,
|
761
|
+
171, 171, 61, 61, 61, 171, 171, 61,
|
762
|
+
46, 166, 166, 166, 166, 61, 61, 174,
|
763
|
+
174, 63, 171, 174, 174, 61, 171, 61,
|
764
|
+
61, 61, 61, 61, 174, 61, 173, 61,
|
765
|
+
174, 171, 174, 175, 174, 171, 176, 61,
|
766
|
+
46, 166, 166, 166, 61, 61, 61, 61,
|
768
767
|
61, 61, 61, 61, 61, 61, 61, 61,
|
769
768
|
61, 61, 61, 61, 61, 61, 61, 61,
|
770
769
|
61, 61, 61, 61, 61, 61, 61, 61,
|
771
770
|
61, 61, 61, 61, 61, 61, 61, 61,
|
772
771
|
61, 61, 61, 61, 61, 61, 61, 61,
|
773
|
-
61,
|
774
|
-
|
775
|
-
|
776
|
-
|
777
|
-
|
778
|
-
|
779
|
-
|
780
|
-
|
781
|
-
|
782
|
-
|
783
|
-
|
784
|
-
|
785
|
-
|
786
|
-
|
787
|
-
|
788
|
-
|
789
|
-
|
790
|
-
|
791
|
-
|
792
|
-
|
793
|
-
|
794
|
-
|
795
|
-
|
796
|
-
|
797
|
-
|
798
|
-
|
799
|
-
|
800
|
-
|
801
|
-
|
802
|
-
|
803
|
-
|
804
|
-
|
805
|
-
|
806
|
-
|
807
|
-
|
772
|
+
61, 61, 61, 61, 61, 61, 61, 61,
|
773
|
+
61, 61, 61, 61, 61, 61, 61, 61,
|
774
|
+
61, 61, 61, 61, 61, 177, 62, 62,
|
775
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
776
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
777
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
778
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
779
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
780
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
781
|
+
62, 62, 62, 62, 62, 62, 62, 62,
|
782
|
+
62, 62, 62, 62, 62, 62, 177, 178,
|
783
|
+
178, 178, 178, 178, 178, 178, 178, 178,
|
784
|
+
178, 178, 178, 178, 178, 178, 178, 178,
|
785
|
+
178, 178, 178, 178, 178, 178, 178, 178,
|
786
|
+
178, 178, 178, 178, 178, 178, 178, 178,
|
787
|
+
178, 178, 178, 178, 178, 178, 178, 178,
|
788
|
+
178, 178, 178, 178, 178, 178, 178, 178,
|
789
|
+
178, 178, 178, 178, 178, 178, 178, 178,
|
790
|
+
178, 178, 178, 178, 178, 178, 178, 177,
|
791
|
+
180, 180, 180, 180, 180, 180, 180, 180,
|
792
|
+
179, 182, 182, 182, 182, 182, 182, 182,
|
793
|
+
182, 181, 184, 64, 186, 185, 64, 188,
|
794
|
+
69, 69, 69, 69, 69, 69, 69, 69,
|
795
|
+
69, 69, 69, 69, 69, 69, 69, 69,
|
796
|
+
69, 69, 69, 69, 69, 69, 69, 69,
|
797
|
+
69, 69, 69, 69, 69, 69, 69, 189,
|
798
|
+
69, 191, 190, 69, 72, 69, 193, 193,
|
799
|
+
193, 193, 193, 193, 193, 193, 193, 193,
|
800
|
+
192, 192, 192, 192, 192, 192, 192, 193,
|
801
|
+
193, 193, 193, 193, 193, 192, 192, 192,
|
802
|
+
192, 192, 192, 192, 192, 192, 192, 192,
|
803
|
+
192, 192, 192, 192, 192, 192, 192, 192,
|
804
|
+
192, 192, 192, 192, 192, 192, 192, 193,
|
805
|
+
193, 193, 193, 193, 193, 192, 195, 194,
|
806
|
+
194, 194, 194, 194, 196, 194, 194, 194,
|
807
|
+
197, 197, 197, 197, 197, 197, 197, 197,
|
808
|
+
197, 194, 194, 198, 194, 88, 87, 87,
|
809
|
+
87, 87, 87, 199, 87, 87, 199, 199,
|
810
|
+
199, 199, 199, 199, 199, 199, 199, 199,
|
811
|
+
87, 90, 90, 90, 90, 90, 90, 90,
|
812
|
+
90, 90, 199, 89, 199, 199, 199, 199,
|
813
|
+
199, 199, 90, 90, 90, 90, 90, 90,
|
814
|
+
90, 90, 90, 90, 199, 199, 91, 91,
|
815
|
+
91, 91, 91, 91, 91, 91, 91, 91,
|
816
|
+
91, 199, 91, 91, 199, 199, 199, 199,
|
817
|
+
199, 199, 199, 199, 199, 199, 91, 91,
|
818
|
+
91, 91, 88, 91, 0
|
808
819
|
]
|
809
820
|
|
810
821
|
class << self
|
@@ -813,30 +824,30 @@ class << self
|
|
813
824
|
end
|
814
825
|
self._re_scanner_trans_targs = [
|
815
826
|
73, 74, 1, 2, 73, 4, 73, 6,
|
816
|
-
73, 8, 83, 73, 10, 17, 11,
|
817
|
-
12, 16, 14, 13, 15, 18, 19,
|
818
|
-
21, 20, 22, 25, 31, 26, 73,
|
819
|
-
29, 28, 30, 32, 33, 35, 34,
|
820
|
-
73, 38, 73, 39, 41, 0, 42,
|
821
|
-
90, 91, 91, 44, 91, 91, 91,
|
822
|
-
48, 91, 91,
|
823
|
-
|
824
|
-
58, 61, 59, 60,
|
825
|
-
65, 66, 67,
|
826
|
-
|
827
|
-
79, 73, 80, 73, 84, 85, 73,
|
828
|
-
73, 87, 73, 73, 88, 73, 73,
|
829
|
-
73, 73, 73, 81, 73, 82,
|
827
|
+
73, 8, 73, 83, 73, 10, 17, 11,
|
828
|
+
73, 12, 16, 14, 13, 15, 18, 19,
|
829
|
+
23, 21, 20, 22, 25, 31, 26, 73,
|
830
|
+
27, 29, 28, 30, 32, 33, 35, 34,
|
831
|
+
36, 73, 38, 73, 39, 41, 0, 42,
|
832
|
+
43, 90, 91, 91, 44, 91, 91, 91,
|
833
|
+
47, 48, 91, 91, 101, 101, 49, 52,
|
834
|
+
101, 107, 101, 109, 55, 101, 110, 101,
|
835
|
+
112, 58, 61, 59, 60, 101, 62, 63,
|
836
|
+
64, 65, 66, 67, 101, 114, 115, 69,
|
837
|
+
70, 115, 71, 72, 3, 75, 76, 77,
|
838
|
+
78, 79, 73, 80, 73, 84, 85, 73,
|
839
|
+
86, 73, 87, 73, 73, 88, 73, 73,
|
840
|
+
73, 73, 73, 73, 81, 73, 82, 5,
|
830
841
|
73, 7, 73, 73, 73, 73, 73, 73,
|
831
842
|
73, 73, 73, 73, 73, 9, 24, 73,
|
832
843
|
37, 89, 40, 92, 93, 94, 91, 95,
|
833
844
|
96, 97, 91, 91, 91, 91, 45, 91,
|
834
|
-
91, 46, 91, 91, 91, 98,
|
835
|
-
|
836
|
-
|
837
|
-
|
838
|
-
|
839
|
-
115, 116, 117,
|
845
|
+
91, 46, 91, 91, 91, 98, 99, 98,
|
846
|
+
98, 100, 98, 102, 103, 104, 101, 105,
|
847
|
+
105, 101, 51, 101, 54, 101, 101, 57,
|
848
|
+
68, 101, 50, 101, 106, 101, 101, 101,
|
849
|
+
108, 101, 53, 101, 111, 113, 101, 56,
|
850
|
+
101, 101, 115, 116, 117, 118, 119, 115
|
840
851
|
]
|
841
852
|
|
842
853
|
class << self
|
@@ -845,30 +856,30 @@ class << self
|
|
845
856
|
end
|
846
857
|
self._re_scanner_trans_actions = [
|
847
858
|
1, 2, 0, 0, 3, 4, 5, 0,
|
848
|
-
6, 0, 7, 8,
|
849
|
-
|
850
|
-
0, 0, 0, 0, 0, 0,
|
859
|
+
6, 0, 7, 8, 9, 0, 0, 0,
|
860
|
+
10, 0, 0, 0, 0, 0, 0, 0,
|
861
|
+
0, 0, 0, 0, 0, 0, 0, 11,
|
851
862
|
0, 0, 0, 0, 0, 0, 0, 0,
|
852
|
-
|
853
|
-
|
854
|
-
0,
|
855
|
-
|
856
|
-
0, 0, 0, 0,
|
857
|
-
0, 0, 0,
|
858
|
-
|
859
|
-
0,
|
860
|
-
|
861
|
-
46, 47, 48, 49, 50,
|
863
|
+
0, 12, 0, 13, 0, 0, 0, 0,
|
864
|
+
0, 15, 16, 17, 0, 18, 19, 20,
|
865
|
+
0, 0, 21, 22, 23, 24, 0, 0,
|
866
|
+
26, 0, 27, 0, 0, 28, 0, 29,
|
867
|
+
0, 0, 0, 0, 0, 30, 0, 0,
|
868
|
+
0, 0, 0, 0, 31, 0, 32, 0,
|
869
|
+
0, 33, 0, 0, 0, 0, 0, 0,
|
870
|
+
0, 0, 36, 37, 38, 0, 0, 39,
|
871
|
+
0, 40, 41, 42, 43, 41, 44, 45,
|
872
|
+
46, 47, 48, 49, 50, 51, 0, 0,
|
862
873
|
52, 0, 53, 54, 55, 56, 57, 58,
|
863
874
|
59, 60, 61, 62, 63, 0, 0, 64,
|
864
|
-
0, 66, 0, 0,
|
865
|
-
|
866
|
-
74, 0, 75, 76, 77, 78,
|
867
|
-
|
868
|
-
|
869
|
-
0, 89, 90,
|
870
|
-
|
871
|
-
|
875
|
+
0, 66, 0, 0, 41, 41, 67, 0,
|
876
|
+
41, 68, 69, 70, 71, 72, 0, 73,
|
877
|
+
74, 0, 75, 76, 77, 78, 0, 79,
|
878
|
+
80, 0, 81, 0, 41, 41, 82, 83,
|
879
|
+
84, 85, 0, 86, 0, 87, 88, 0,
|
880
|
+
0, 89, 0, 90, 0, 91, 92, 93,
|
881
|
+
41, 94, 0, 95, 41, 0, 96, 0,
|
882
|
+
97, 98, 99, 41, 41, 41, 41, 100
|
872
883
|
]
|
873
884
|
|
874
885
|
class << self
|
@@ -885,12 +896,12 @@ self._re_scanner_to_state_actions = [
|
|
885
896
|
0, 0, 0, 0, 0, 0, 0, 0,
|
886
897
|
0, 0, 0, 0, 0, 0, 0, 0,
|
887
898
|
0, 0, 0, 0, 0, 0, 0, 0,
|
888
|
-
0,
|
899
|
+
0, 34, 0, 0, 0, 0, 0, 0,
|
889
900
|
0, 0, 0, 0, 0, 0, 0, 0,
|
890
901
|
0, 65, 65, 65, 0, 0, 0, 0,
|
891
|
-
0, 0, 65,
|
902
|
+
0, 0, 65, 0, 0, 65, 0, 0,
|
892
903
|
0, 0, 0, 0, 0, 0, 0, 0,
|
893
|
-
0, 65, 0, 0, 0, 0
|
904
|
+
0, 0, 0, 65, 0, 0, 0, 0
|
894
905
|
]
|
895
906
|
|
896
907
|
class << self
|
@@ -907,12 +918,12 @@ self._re_scanner_from_state_actions = [
|
|
907
918
|
0, 0, 0, 0, 0, 0, 0, 0,
|
908
919
|
0, 0, 0, 0, 0, 0, 0, 0,
|
909
920
|
0, 0, 0, 0, 0, 0, 0, 0,
|
910
|
-
0,
|
921
|
+
0, 35, 0, 0, 0, 0, 0, 0,
|
911
922
|
0, 0, 0, 0, 0, 0, 0, 0,
|
912
|
-
0,
|
913
|
-
0, 0,
|
923
|
+
0, 35, 35, 35, 0, 0, 0, 0,
|
924
|
+
0, 0, 35, 0, 0, 35, 0, 0,
|
914
925
|
0, 0, 0, 0, 0, 0, 0, 0,
|
915
|
-
0,
|
926
|
+
0, 0, 0, 35, 0, 0, 0, 0
|
916
927
|
]
|
917
928
|
|
918
929
|
class << self
|
@@ -925,16 +936,16 @@ self._re_scanner_eof_actions = [
|
|
925
936
|
0, 0, 0, 0, 0, 0, 0, 0,
|
926
937
|
0, 0, 0, 0, 0, 0, 0, 0,
|
927
938
|
0, 0, 0, 0, 0, 0, 0, 0,
|
928
|
-
|
929
|
-
0, 0, 0,
|
930
|
-
0,
|
931
|
-
|
939
|
+
14, 14, 14, 14, 0, 0, 0, 0,
|
940
|
+
0, 0, 0, 25, 25, 0, 25, 25,
|
941
|
+
0, 25, 25, 25, 25, 25, 25, 25,
|
942
|
+
25, 25, 25, 25, 25, 0, 0, 0,
|
932
943
|
0, 0, 0, 0, 0, 0, 0, 0,
|
933
944
|
0, 0, 0, 0, 0, 0, 0, 0,
|
934
|
-
0, 0, 0,
|
935
|
-
0, 0, 0,
|
945
|
+
0, 0, 0, 25, 0, 0, 0, 0,
|
946
|
+
0, 0, 0, 0, 0, 25, 0, 0,
|
936
947
|
0, 0, 0, 0, 0, 0, 0, 0,
|
937
|
-
0, 0, 0, 0, 0, 0
|
948
|
+
0, 0, 0, 0, 0, 0, 0, 0
|
938
949
|
]
|
939
950
|
|
940
951
|
class << self
|
@@ -943,20 +954,20 @@ class << self
|
|
943
954
|
end
|
944
955
|
self._re_scanner_eof_trans = [
|
945
956
|
0, 1, 1, 1, 5, 5, 5, 5,
|
946
|
-
1,
|
947
|
-
|
948
|
-
|
949
|
-
|
950
|
-
0, 0, 0, 0,
|
951
|
-
|
952
|
-
|
953
|
-
0, 0, 0, 0, 0,
|
954
|
-
|
955
|
-
|
957
|
+
1, 13, 13, 13, 13, 13, 13, 13,
|
958
|
+
13, 13, 13, 13, 13, 13, 13, 13,
|
959
|
+
13, 13, 13, 13, 13, 13, 13, 13,
|
960
|
+
13, 13, 13, 13, 13, 42, 42, 42,
|
961
|
+
0, 0, 0, 0, 51, 51, 54, 56,
|
962
|
+
56, 61, 61, 0, 0, 67, 0, 0,
|
963
|
+
72, 0, 0, 0, 0, 0, 0, 0,
|
964
|
+
0, 0, 0, 0, 0, 87, 87, 87,
|
965
|
+
87, 0, 112, 112, 113, 113, 112, 114,
|
966
|
+
116, 118, 118, 124, 125, 127, 129, 131,
|
956
967
|
136, 0, 0, 0, 150, 150, 150, 150,
|
957
|
-
153, 156, 0,
|
958
|
-
178, 180,
|
959
|
-
|
968
|
+
153, 156, 0, 161, 161, 0, 178, 178,
|
969
|
+
178, 180, 182, 184, 184, 184, 188, 188,
|
970
|
+
188, 188, 193, 0, 200, 200, 200, 200
|
960
971
|
]
|
961
972
|
|
962
973
|
class << self
|
@@ -991,20 +1002,20 @@ self.re_scanner_en_set_escape_sequence = 98;
|
|
991
1002
|
class << self
|
992
1003
|
attr_accessor :re_scanner_en_escape_sequence
|
993
1004
|
end
|
994
|
-
self.re_scanner_en_escape_sequence =
|
1005
|
+
self.re_scanner_en_escape_sequence = 101;
|
995
1006
|
class << self
|
996
1007
|
attr_accessor :re_scanner_en_conditional_expression
|
997
1008
|
end
|
998
|
-
self.re_scanner_en_conditional_expression =
|
1009
|
+
self.re_scanner_en_conditional_expression = 115;
|
999
1010
|
class << self
|
1000
1011
|
attr_accessor :re_scanner_en_main
|
1001
1012
|
end
|
1002
1013
|
self.re_scanner_en_main = 73;
|
1003
1014
|
|
1004
1015
|
|
1005
|
-
# line
|
1016
|
+
# line 749 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1006
1017
|
|
1007
|
-
# line
|
1018
|
+
# line 1018 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner.rb"
|
1008
1019
|
begin
|
1009
1020
|
p ||= 0
|
1010
1021
|
pe ||= data.length
|
@@ -1015,9 +1026,9 @@ begin
|
|
1015
1026
|
act = 0
|
1016
1027
|
end
|
1017
1028
|
|
1018
|
-
# line
|
1029
|
+
# line 750 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1019
1030
|
|
1020
|
-
# line
|
1031
|
+
# line 1031 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner.rb"
|
1021
1032
|
begin
|
1022
1033
|
testEof = false
|
1023
1034
|
_slen, _trans, _keys, _inds, _acts, _nacts = nil
|
@@ -1040,12 +1051,12 @@ begin
|
|
1040
1051
|
end
|
1041
1052
|
if _goto_level <= _resume
|
1042
1053
|
case _re_scanner_from_state_actions[cs]
|
1043
|
-
when
|
1054
|
+
when 35 then
|
1044
1055
|
# line 1 "NONE"
|
1045
1056
|
begin
|
1046
1057
|
ts = p
|
1047
1058
|
end
|
1048
|
-
# line
|
1059
|
+
# line 1059 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner.rb"
|
1049
1060
|
end
|
1050
1061
|
_keys = cs << 1
|
1051
1062
|
_inds = _re_scanner_index_offsets[cs]
|
@@ -1064,21 +1075,21 @@ ts = p
|
|
1064
1075
|
cs = _re_scanner_trans_targs[_trans]
|
1065
1076
|
if _re_scanner_trans_actions[_trans] != 0
|
1066
1077
|
case _re_scanner_trans_actions[_trans]
|
1067
|
-
when
|
1068
|
-
# line
|
1078
|
+
when 37 then
|
1079
|
+
# line 147 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1069
1080
|
begin
|
1070
1081
|
self.group_depth = group_depth + 1 end
|
1071
1082
|
when 4 then
|
1072
|
-
# line
|
1083
|
+
# line 148 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1073
1084
|
begin
|
1074
1085
|
self.group_depth = group_depth - 1 end
|
1075
|
-
when
|
1086
|
+
when 41 then
|
1076
1087
|
# line 1 "NONE"
|
1077
1088
|
begin
|
1078
1089
|
te = p+1
|
1079
1090
|
end
|
1080
1091
|
when 66 then
|
1081
|
-
# line 12 "/Users/
|
1092
|
+
# line 12 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/char_type.rl"
|
1082
1093
|
begin
|
1083
1094
|
te = p+1
|
1084
1095
|
begin
|
@@ -1103,15 +1114,15 @@ te = p+1
|
|
1103
1114
|
|
1104
1115
|
end
|
1105
1116
|
end
|
1106
|
-
when
|
1107
|
-
# line 16 "/Users/
|
1117
|
+
when 15 then
|
1118
|
+
# line 16 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/property.rl"
|
1108
1119
|
begin
|
1109
1120
|
te = p+1
|
1110
1121
|
begin
|
1111
1122
|
text = copy(data, ts-1, te)
|
1112
1123
|
type = (text[1] == 'P') ^ (text[3] == '^') ? :nonproperty : :property
|
1113
1124
|
|
1114
|
-
name =
|
1125
|
+
name = text[3..-2].gsub(/[\^\s_\-]/, '').downcase
|
1115
1126
|
|
1116
1127
|
token = self.class.short_prop_map[name] || self.class.long_prop_map[name]
|
1117
1128
|
validation_error(:property, name) unless token
|
@@ -1127,8 +1138,8 @@ te = p+1
|
|
1127
1138
|
|
1128
1139
|
end
|
1129
1140
|
end
|
1130
|
-
when
|
1131
|
-
# line
|
1141
|
+
when 19 then
|
1142
|
+
# line 175 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1132
1143
|
begin
|
1133
1144
|
te = p+1
|
1134
1145
|
begin # special case, emits two tokens
|
@@ -1137,28 +1148,27 @@ te = p+1
|
|
1137
1148
|
end
|
1138
1149
|
end
|
1139
1150
|
when 71 then
|
1140
|
-
# line
|
1151
|
+
# line 180 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1141
1152
|
begin
|
1142
1153
|
te = p+1
|
1143
1154
|
begin
|
1144
|
-
|
1145
|
-
|
1146
|
-
emit(:set, :negate, text)
|
1155
|
+
if prev_token[1] == :open
|
1156
|
+
emit(:set, :negate, '^')
|
1147
1157
|
else
|
1148
|
-
emit(:literal, :literal,
|
1158
|
+
emit(:literal, :literal, '^')
|
1149
1159
|
end
|
1150
1160
|
end
|
1151
1161
|
end
|
1152
1162
|
when 73 then
|
1153
|
-
# line
|
1163
|
+
# line 200 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1154
1164
|
begin
|
1155
1165
|
te = p+1
|
1156
1166
|
begin
|
1157
|
-
emit(:set, :intersection,
|
1167
|
+
emit(:set, :intersection, '&&')
|
1158
1168
|
end
|
1159
1169
|
end
|
1160
1170
|
when 69 then
|
1161
|
-
# line
|
1171
|
+
# line 204 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1162
1172
|
begin
|
1163
1173
|
te = p+1
|
1164
1174
|
begin
|
@@ -1173,15 +1183,15 @@ te = p+1
|
|
1173
1183
|
end
|
1174
1184
|
end
|
1175
1185
|
when 67 then
|
1176
|
-
# line
|
1186
|
+
# line 238 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1177
1187
|
begin
|
1178
1188
|
te = p+1
|
1179
1189
|
begin
|
1180
1190
|
emit(:literal, :literal, copy(data, ts, te))
|
1181
1191
|
end
|
1182
1192
|
end
|
1183
|
-
when
|
1184
|
-
# line
|
1193
|
+
when 17 then
|
1194
|
+
# line 242 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1185
1195
|
begin
|
1186
1196
|
te = p+1
|
1187
1197
|
begin
|
@@ -1190,25 +1200,25 @@ te = p+1
|
|
1190
1200
|
end
|
1191
1201
|
end
|
1192
1202
|
when 74 then
|
1193
|
-
# line
|
1203
|
+
# line 188 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1194
1204
|
begin
|
1195
1205
|
te = p
|
1196
1206
|
p = p - 1; begin
|
1197
|
-
|
1198
|
-
#
|
1199
|
-
if
|
1200
|
-
emit(:literal, :literal,
|
1207
|
+
# ranges cant start with the opening bracket, a subset, or
|
1208
|
+
# intersection/negation/range operators
|
1209
|
+
if prev_token[0] == :set
|
1210
|
+
emit(:literal, :literal, '-')
|
1201
1211
|
else
|
1202
|
-
emit(:set, :range,
|
1212
|
+
emit(:set, :range, '-')
|
1203
1213
|
end
|
1204
1214
|
end
|
1205
1215
|
end
|
1206
1216
|
when 77 then
|
1207
|
-
# line
|
1217
|
+
# line 208 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1208
1218
|
begin
|
1209
1219
|
te = p
|
1210
1220
|
p = p - 1; begin
|
1211
|
-
emit(:set, :open,
|
1221
|
+
emit(:set, :open, '[')
|
1212
1222
|
begin
|
1213
1223
|
stack[top] = cs
|
1214
1224
|
top+= 1
|
@@ -1220,7 +1230,7 @@ p = p - 1; begin
|
|
1220
1230
|
end
|
1221
1231
|
end
|
1222
1232
|
when 72 then
|
1223
|
-
# line
|
1233
|
+
# line 242 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1224
1234
|
begin
|
1225
1235
|
te = p
|
1226
1236
|
p = p - 1; begin
|
@@ -1228,26 +1238,26 @@ p = p - 1; begin
|
|
1228
1238
|
emit(:literal, :literal, text)
|
1229
1239
|
end
|
1230
1240
|
end
|
1231
|
-
when
|
1232
|
-
# line
|
1241
|
+
when 18 then
|
1242
|
+
# line 188 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1233
1243
|
begin
|
1234
1244
|
begin p = ((te))-1; end
|
1235
1245
|
begin
|
1236
|
-
|
1237
|
-
#
|
1238
|
-
if
|
1239
|
-
emit(:literal, :literal,
|
1246
|
+
# ranges cant start with the opening bracket, a subset, or
|
1247
|
+
# intersection/negation/range operators
|
1248
|
+
if prev_token[0] == :set
|
1249
|
+
emit(:literal, :literal, '-')
|
1240
1250
|
else
|
1241
|
-
emit(:set, :range,
|
1251
|
+
emit(:set, :range, '-')
|
1242
1252
|
end
|
1243
1253
|
end
|
1244
1254
|
end
|
1245
|
-
when
|
1246
|
-
# line
|
1255
|
+
when 21 then
|
1256
|
+
# line 208 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1247
1257
|
begin
|
1248
1258
|
begin p = ((te))-1; end
|
1249
1259
|
begin
|
1250
|
-
emit(:set, :open,
|
1260
|
+
emit(:set, :open, '[')
|
1251
1261
|
begin
|
1252
1262
|
stack[top] = cs
|
1253
1263
|
top+= 1
|
@@ -1258,17 +1268,32 @@ p = p - 1; begin
|
|
1258
1268
|
|
1259
1269
|
end
|
1260
1270
|
end
|
1261
|
-
when
|
1262
|
-
# line
|
1271
|
+
when 16 then
|
1272
|
+
# line 242 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1263
1273
|
begin
|
1264
1274
|
begin p = ((te))-1; end
|
1265
1275
|
begin
|
1266
1276
|
text = copy(data, ts, te)
|
1267
1277
|
emit(:literal, :literal, text)
|
1278
|
+
end
|
1279
|
+
end
|
1280
|
+
when 81 then
|
1281
|
+
# line 252 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1282
|
+
begin
|
1283
|
+
te = p+1
|
1284
|
+
begin
|
1285
|
+
emit(:escape, :octal, copy(data, ts-1, te))
|
1286
|
+
begin
|
1287
|
+
top -= 1
|
1288
|
+
cs = stack[top]
|
1289
|
+
_goto_level = _again
|
1290
|
+
next
|
1291
|
+
end
|
1292
|
+
|
1268
1293
|
end
|
1269
1294
|
end
|
1270
1295
|
when 79 then
|
1271
|
-
# line
|
1296
|
+
# line 258 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1272
1297
|
begin
|
1273
1298
|
te = p+1
|
1274
1299
|
begin
|
@@ -1277,7 +1302,7 @@ te = p+1
|
|
1277
1302
|
begin
|
1278
1303
|
stack[top] = cs
|
1279
1304
|
top+= 1
|
1280
|
-
cs =
|
1305
|
+
cs = 101
|
1281
1306
|
_goto_level = _again
|
1282
1307
|
next
|
1283
1308
|
end
|
@@ -1285,7 +1310,7 @@ te = p+1
|
|
1285
1310
|
end
|
1286
1311
|
end
|
1287
1312
|
when 78 then
|
1288
|
-
# line
|
1313
|
+
# line 267 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1289
1314
|
begin
|
1290
1315
|
te = p+1
|
1291
1316
|
begin
|
@@ -1299,8 +1324,23 @@ te = p+1
|
|
1299
1324
|
|
1300
1325
|
end
|
1301
1326
|
end
|
1302
|
-
when
|
1303
|
-
# line
|
1327
|
+
when 80 then
|
1328
|
+
# line 252 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1329
|
+
begin
|
1330
|
+
te = p
|
1331
|
+
p = p - 1; begin
|
1332
|
+
emit(:escape, :octal, copy(data, ts-1, te))
|
1333
|
+
begin
|
1334
|
+
top -= 1
|
1335
|
+
cs = stack[top]
|
1336
|
+
_goto_level = _again
|
1337
|
+
next
|
1338
|
+
end
|
1339
|
+
|
1340
|
+
end
|
1341
|
+
end
|
1342
|
+
when 85 then
|
1343
|
+
# line 277 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1304
1344
|
begin
|
1305
1345
|
te = p+1
|
1306
1346
|
begin
|
@@ -1315,8 +1355,8 @@ te = p+1
|
|
1315
1355
|
|
1316
1356
|
end
|
1317
1357
|
end
|
1318
|
-
when
|
1319
|
-
# line
|
1358
|
+
when 92 then
|
1359
|
+
# line 283 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1320
1360
|
begin
|
1321
1361
|
te = p+1
|
1322
1362
|
begin
|
@@ -1330,8 +1370,8 @@ te = p+1
|
|
1330
1370
|
|
1331
1371
|
end
|
1332
1372
|
end
|
1333
|
-
when
|
1334
|
-
# line
|
1373
|
+
when 82 then
|
1374
|
+
# line 288 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1335
1375
|
begin
|
1336
1376
|
te = p+1
|
1337
1377
|
begin
|
@@ -1361,8 +1401,8 @@ te = p+1
|
|
1361
1401
|
|
1362
1402
|
end
|
1363
1403
|
end
|
1364
|
-
when
|
1365
|
-
# line
|
1404
|
+
when 88 then
|
1405
|
+
# line 309 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1366
1406
|
begin
|
1367
1407
|
te = p+1
|
1368
1408
|
begin
|
@@ -1387,8 +1427,8 @@ te = p+1
|
|
1387
1427
|
|
1388
1428
|
end
|
1389
1429
|
end
|
1390
|
-
when
|
1391
|
-
# line
|
1430
|
+
when 30 then
|
1431
|
+
# line 325 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1392
1432
|
begin
|
1393
1433
|
te = p+1
|
1394
1434
|
begin
|
@@ -1407,8 +1447,8 @@ te = p+1
|
|
1407
1447
|
|
1408
1448
|
end
|
1409
1449
|
end
|
1410
|
-
when
|
1411
|
-
# line
|
1450
|
+
when 98 then
|
1451
|
+
# line 335 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1412
1452
|
begin
|
1413
1453
|
te = p+1
|
1414
1454
|
begin
|
@@ -1422,8 +1462,8 @@ te = p+1
|
|
1422
1462
|
|
1423
1463
|
end
|
1424
1464
|
end
|
1425
|
-
when
|
1426
|
-
# line
|
1465
|
+
when 26 then
|
1466
|
+
# line 344 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1427
1467
|
begin
|
1428
1468
|
te = p+1
|
1429
1469
|
begin
|
@@ -1437,8 +1477,8 @@ te = p+1
|
|
1437
1477
|
|
1438
1478
|
end
|
1439
1479
|
end
|
1440
|
-
when
|
1441
|
-
# line
|
1480
|
+
when 28 then
|
1481
|
+
# line 349 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1442
1482
|
begin
|
1443
1483
|
te = p+1
|
1444
1484
|
begin
|
@@ -1452,8 +1492,8 @@ te = p+1
|
|
1452
1492
|
|
1453
1493
|
end
|
1454
1494
|
end
|
1455
|
-
when
|
1456
|
-
# line
|
1495
|
+
when 86 then
|
1496
|
+
# line 354 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1457
1497
|
begin
|
1458
1498
|
te = p+1
|
1459
1499
|
begin
|
@@ -1469,8 +1509,8 @@ te = p+1
|
|
1469
1509
|
|
1470
1510
|
end
|
1471
1511
|
end
|
1472
|
-
when
|
1473
|
-
# line
|
1512
|
+
when 87 then
|
1513
|
+
# line 360 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1474
1514
|
begin
|
1475
1515
|
te = p+1
|
1476
1516
|
begin
|
@@ -1486,8 +1526,8 @@ te = p+1
|
|
1486
1526
|
|
1487
1527
|
end
|
1488
1528
|
end
|
1489
|
-
when
|
1490
|
-
# line
|
1529
|
+
when 24 then
|
1530
|
+
# line 366 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1491
1531
|
begin
|
1492
1532
|
te = p+1
|
1493
1533
|
begin
|
@@ -1501,8 +1541,8 @@ te = p+1
|
|
1501
1541
|
|
1502
1542
|
end
|
1503
1543
|
end
|
1504
|
-
when
|
1505
|
-
# line
|
1544
|
+
when 91 then
|
1545
|
+
# line 283 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1506
1546
|
begin
|
1507
1547
|
te = p
|
1508
1548
|
p = p - 1; begin
|
@@ -1516,8 +1556,8 @@ p = p - 1; begin
|
|
1516
1556
|
|
1517
1557
|
end
|
1518
1558
|
end
|
1519
|
-
when
|
1520
|
-
# line
|
1559
|
+
when 97 then
|
1560
|
+
# line 335 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1521
1561
|
begin
|
1522
1562
|
te = p
|
1523
1563
|
p = p - 1; begin
|
@@ -1531,8 +1571,8 @@ p = p - 1; begin
|
|
1531
1571
|
|
1532
1572
|
end
|
1533
1573
|
end
|
1534
|
-
when
|
1535
|
-
# line
|
1574
|
+
when 94 then
|
1575
|
+
# line 344 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1536
1576
|
begin
|
1537
1577
|
te = p
|
1538
1578
|
p = p - 1; begin
|
@@ -1546,8 +1586,8 @@ p = p - 1; begin
|
|
1546
1586
|
|
1547
1587
|
end
|
1548
1588
|
end
|
1549
|
-
when
|
1550
|
-
# line
|
1589
|
+
when 96 then
|
1590
|
+
# line 349 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1551
1591
|
begin
|
1552
1592
|
te = p
|
1553
1593
|
p = p - 1; begin
|
@@ -1561,8 +1601,8 @@ p = p - 1; begin
|
|
1561
1601
|
|
1562
1602
|
end
|
1563
1603
|
end
|
1564
|
-
when
|
1565
|
-
# line
|
1604
|
+
when 89 then
|
1605
|
+
# line 366 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1566
1606
|
begin
|
1567
1607
|
te = p
|
1568
1608
|
p = p - 1; begin
|
@@ -1576,8 +1616,8 @@ p = p - 1; begin
|
|
1576
1616
|
|
1577
1617
|
end
|
1578
1618
|
end
|
1579
|
-
when
|
1580
|
-
# line
|
1619
|
+
when 23 then
|
1620
|
+
# line 366 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1581
1621
|
begin
|
1582
1622
|
begin p = ((te))-1; end
|
1583
1623
|
begin
|
@@ -1591,11 +1631,11 @@ p = p - 1; begin
|
|
1591
1631
|
|
1592
1632
|
end
|
1593
1633
|
end
|
1594
|
-
when
|
1634
|
+
when 90 then
|
1595
1635
|
# line 1 "NONE"
|
1596
1636
|
begin
|
1597
1637
|
case act
|
1598
|
-
when
|
1638
|
+
when 17 then
|
1599
1639
|
begin begin p = ((te))-1; end
|
1600
1640
|
|
1601
1641
|
text = copy(data, ts-1, te)
|
@@ -1608,7 +1648,7 @@ p = p - 1; begin
|
|
1608
1648
|
end
|
1609
1649
|
|
1610
1650
|
end
|
1611
|
-
when
|
1651
|
+
when 18 then
|
1612
1652
|
begin begin p = ((te))-1; end
|
1613
1653
|
|
1614
1654
|
emit(:escape, :octal, copy(data, ts-1, te))
|
@@ -1622,8 +1662,8 @@ p = p - 1; begin
|
|
1622
1662
|
end
|
1623
1663
|
end
|
1624
1664
|
end
|
1625
|
-
when
|
1626
|
-
# line
|
1665
|
+
when 33 then
|
1666
|
+
# line 376 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1627
1667
|
begin
|
1628
1668
|
te = p+1
|
1629
1669
|
begin
|
@@ -1632,8 +1672,8 @@ te = p+1
|
|
1632
1672
|
emit(:conditional, :condition_close, ')')
|
1633
1673
|
end
|
1634
1674
|
end
|
1635
|
-
when
|
1636
|
-
# line
|
1675
|
+
when 99 then
|
1676
|
+
# line 382 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1637
1677
|
begin
|
1638
1678
|
te = p+1
|
1639
1679
|
begin
|
@@ -1648,8 +1688,8 @@ te = p+1
|
|
1648
1688
|
|
1649
1689
|
end
|
1650
1690
|
end
|
1651
|
-
when
|
1652
|
-
# line
|
1691
|
+
when 100 then
|
1692
|
+
# line 382 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1653
1693
|
begin
|
1654
1694
|
te = p
|
1655
1695
|
p = p - 1; begin
|
@@ -1664,8 +1704,8 @@ p = p - 1; begin
|
|
1664
1704
|
|
1665
1705
|
end
|
1666
1706
|
end
|
1667
|
-
when
|
1668
|
-
# line
|
1707
|
+
when 32 then
|
1708
|
+
# line 382 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1669
1709
|
begin
|
1670
1710
|
begin p = ((te))-1; end
|
1671
1711
|
begin
|
@@ -1680,16 +1720,16 @@ p = p - 1; begin
|
|
1680
1720
|
|
1681
1721
|
end
|
1682
1722
|
end
|
1683
|
-
when
|
1684
|
-
# line
|
1723
|
+
when 39 then
|
1724
|
+
# line 395 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1685
1725
|
begin
|
1686
1726
|
te = p+1
|
1687
1727
|
begin
|
1688
1728
|
emit(:meta, :dot, copy(data, ts, te))
|
1689
1729
|
end
|
1690
1730
|
end
|
1691
|
-
when
|
1692
|
-
# line
|
1731
|
+
when 44 then
|
1732
|
+
# line 399 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1693
1733
|
begin
|
1694
1734
|
te = p+1
|
1695
1735
|
begin
|
@@ -1700,16 +1740,16 @@ te = p+1
|
|
1700
1740
|
end
|
1701
1741
|
end
|
1702
1742
|
end
|
1703
|
-
when
|
1704
|
-
# line
|
1743
|
+
when 43 then
|
1744
|
+
# line 409 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1705
1745
|
begin
|
1706
1746
|
te = p+1
|
1707
1747
|
begin
|
1708
1748
|
emit(:anchor, :bol, copy(data, ts, te))
|
1709
1749
|
end
|
1710
1750
|
end
|
1711
|
-
when
|
1712
|
-
# line
|
1751
|
+
when 36 then
|
1752
|
+
# line 413 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1713
1753
|
begin
|
1714
1754
|
te = p+1
|
1715
1755
|
begin
|
@@ -1717,7 +1757,7 @@ te = p+1
|
|
1717
1757
|
end
|
1718
1758
|
end
|
1719
1759
|
when 63 then
|
1720
|
-
# line
|
1760
|
+
# line 417 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1721
1761
|
begin
|
1722
1762
|
te = p+1
|
1723
1763
|
begin
|
@@ -1725,7 +1765,7 @@ te = p+1
|
|
1725
1765
|
end
|
1726
1766
|
end
|
1727
1767
|
when 62 then
|
1728
|
-
# line
|
1768
|
+
# line 421 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1729
1769
|
begin
|
1730
1770
|
te = p+1
|
1731
1771
|
begin
|
@@ -1739,8 +1779,8 @@ te = p+1
|
|
1739
1779
|
end
|
1740
1780
|
end
|
1741
1781
|
end
|
1742
|
-
when
|
1743
|
-
# line
|
1782
|
+
when 42 then
|
1783
|
+
# line 432 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1744
1784
|
begin
|
1745
1785
|
te = p+1
|
1746
1786
|
begin
|
@@ -1748,7 +1788,7 @@ te = p+1
|
|
1748
1788
|
end
|
1749
1789
|
end
|
1750
1790
|
when 52 then
|
1751
|
-
# line
|
1791
|
+
# line 447 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1752
1792
|
begin
|
1753
1793
|
te = p+1
|
1754
1794
|
begin
|
@@ -1761,7 +1801,7 @@ te = p+1
|
|
1761
1801
|
begin
|
1762
1802
|
stack[top] = cs
|
1763
1803
|
top+= 1
|
1764
|
-
cs =
|
1804
|
+
cs = 115
|
1765
1805
|
_goto_level = _again
|
1766
1806
|
next
|
1767
1807
|
end
|
@@ -1769,7 +1809,7 @@ te = p+1
|
|
1769
1809
|
end
|
1770
1810
|
end
|
1771
1811
|
when 53 then
|
1772
|
-
# line
|
1812
|
+
# line 478 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1773
1813
|
begin
|
1774
1814
|
te = p+1
|
1775
1815
|
begin
|
@@ -1780,8 +1820,8 @@ te = p+1
|
|
1780
1820
|
emit_options(text)
|
1781
1821
|
end
|
1782
1822
|
end
|
1783
|
-
when
|
1784
|
-
# line
|
1823
|
+
when 7 then
|
1824
|
+
# line 492 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1785
1825
|
begin
|
1786
1826
|
te = p+1
|
1787
1827
|
begin
|
@@ -1794,7 +1834,7 @@ te = p+1
|
|
1794
1834
|
end
|
1795
1835
|
end
|
1796
1836
|
when 6 then
|
1797
|
-
# line
|
1837
|
+
# line 509 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1798
1838
|
begin
|
1799
1839
|
te = p+1
|
1800
1840
|
begin
|
@@ -1815,8 +1855,8 @@ te = p+1
|
|
1815
1855
|
end
|
1816
1856
|
end
|
1817
1857
|
end
|
1818
|
-
when
|
1819
|
-
# line
|
1858
|
+
when 11 then
|
1859
|
+
# line 550 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1820
1860
|
begin
|
1821
1861
|
te = p+1
|
1822
1862
|
begin
|
@@ -1836,8 +1876,8 @@ te = p+1
|
|
1836
1876
|
end
|
1837
1877
|
end
|
1838
1878
|
end
|
1839
|
-
when
|
1840
|
-
# line
|
1879
|
+
when 10 then
|
1880
|
+
# line 569 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1841
1881
|
begin
|
1842
1882
|
te = p+1
|
1843
1883
|
begin
|
@@ -1854,7 +1894,7 @@ te = p+1
|
|
1854
1894
|
end
|
1855
1895
|
end
|
1856
1896
|
when 60 then
|
1857
|
-
# line
|
1897
|
+
# line 585 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1858
1898
|
begin
|
1859
1899
|
te = p+1
|
1860
1900
|
begin
|
@@ -1866,7 +1906,7 @@ te = p+1
|
|
1866
1906
|
end
|
1867
1907
|
end
|
1868
1908
|
when 56 then
|
1869
|
-
# line
|
1909
|
+
# line 593 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1870
1910
|
begin
|
1871
1911
|
te = p+1
|
1872
1912
|
begin
|
@@ -1878,7 +1918,7 @@ te = p+1
|
|
1878
1918
|
end
|
1879
1919
|
end
|
1880
1920
|
when 58 then
|
1881
|
-
# line
|
1921
|
+
# line 601 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1882
1922
|
begin
|
1883
1923
|
te = p+1
|
1884
1924
|
begin
|
@@ -1889,16 +1929,16 @@ te = p+1
|
|
1889
1929
|
end
|
1890
1930
|
end
|
1891
1931
|
end
|
1892
|
-
when
|
1893
|
-
# line
|
1932
|
+
when 13 then
|
1933
|
+
# line 609 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1894
1934
|
begin
|
1895
1935
|
te = p+1
|
1896
1936
|
begin
|
1897
1937
|
emit(:quantifier, :interval, copy(data, ts, te))
|
1898
1938
|
end
|
1899
1939
|
end
|
1900
|
-
when
|
1901
|
-
# line
|
1940
|
+
when 48 then
|
1941
|
+
# line 624 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1902
1942
|
begin
|
1903
1943
|
te = p+1
|
1904
1944
|
begin
|
@@ -1912,8 +1952,8 @@ te = p+1
|
|
1912
1952
|
end
|
1913
1953
|
end
|
1914
1954
|
end
|
1915
|
-
when
|
1916
|
-
# line
|
1955
|
+
when 51 then
|
1956
|
+
# line 478 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1917
1957
|
begin
|
1918
1958
|
te = p
|
1919
1959
|
p = p - 1; begin
|
@@ -1925,7 +1965,7 @@ p = p - 1; begin
|
|
1925
1965
|
end
|
1926
1966
|
end
|
1927
1967
|
when 54 then
|
1928
|
-
# line
|
1968
|
+
# line 492 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1929
1969
|
begin
|
1930
1970
|
te = p
|
1931
1971
|
p = p - 1; begin
|
@@ -1937,8 +1977,8 @@ p = p - 1; begin
|
|
1937
1977
|
end
|
1938
1978
|
end
|
1939
1979
|
end
|
1940
|
-
when
|
1941
|
-
# line
|
1980
|
+
when 49 then
|
1981
|
+
# line 527 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1942
1982
|
begin
|
1943
1983
|
te = p
|
1944
1984
|
p = p - 1; begin
|
@@ -1947,7 +1987,7 @@ p = p - 1; begin
|
|
1947
1987
|
end
|
1948
1988
|
end
|
1949
1989
|
when 59 then
|
1950
|
-
# line
|
1990
|
+
# line 585 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1951
1991
|
begin
|
1952
1992
|
te = p
|
1953
1993
|
p = p - 1; begin
|
@@ -1959,7 +1999,7 @@ p = p - 1; begin
|
|
1959
1999
|
end
|
1960
2000
|
end
|
1961
2001
|
when 55 then
|
1962
|
-
# line
|
2002
|
+
# line 593 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1963
2003
|
begin
|
1964
2004
|
te = p
|
1965
2005
|
p = p - 1; begin
|
@@ -1971,7 +2011,7 @@ p = p - 1; begin
|
|
1971
2011
|
end
|
1972
2012
|
end
|
1973
2013
|
when 57 then
|
1974
|
-
# line
|
2014
|
+
# line 601 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1975
2015
|
begin
|
1976
2016
|
te = p
|
1977
2017
|
p = p - 1; begin
|
@@ -1983,7 +2023,7 @@ p = p - 1; begin
|
|
1983
2023
|
end
|
1984
2024
|
end
|
1985
2025
|
when 64 then
|
1986
|
-
# line
|
2026
|
+
# line 614 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1987
2027
|
begin
|
1988
2028
|
te = p
|
1989
2029
|
p = p - 1; begin
|
@@ -1991,22 +2031,22 @@ p = p - 1; begin
|
|
1991
2031
|
end
|
1992
2032
|
end
|
1993
2033
|
when 61 then
|
1994
|
-
# line
|
2034
|
+
# line 620 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
1995
2035
|
begin
|
1996
2036
|
te = p
|
1997
2037
|
p = p - 1; begin
|
1998
2038
|
begin
|
1999
2039
|
stack[top] = cs
|
2000
2040
|
top+= 1
|
2001
|
-
cs =
|
2041
|
+
cs = 101
|
2002
2042
|
_goto_level = _again
|
2003
2043
|
next
|
2004
2044
|
end
|
2005
2045
|
|
2006
2046
|
end
|
2007
2047
|
end
|
2008
|
-
when
|
2009
|
-
# line
|
2048
|
+
when 47 then
|
2049
|
+
# line 624 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2010
2050
|
begin
|
2011
2051
|
te = p
|
2012
2052
|
p = p - 1; begin
|
@@ -2020,8 +2060,8 @@ p = p - 1; begin
|
|
2020
2060
|
end
|
2021
2061
|
end
|
2022
2062
|
end
|
2023
|
-
when
|
2024
|
-
# line
|
2063
|
+
when 46 then
|
2064
|
+
# line 634 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2025
2065
|
begin
|
2026
2066
|
te = p
|
2027
2067
|
p = p - 1; begin
|
@@ -2032,8 +2072,8 @@ p = p - 1; begin
|
|
2032
2072
|
end
|
2033
2073
|
end
|
2034
2074
|
end
|
2035
|
-
when
|
2036
|
-
# line
|
2075
|
+
when 45 then
|
2076
|
+
# line 645 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2037
2077
|
begin
|
2038
2078
|
te = p
|
2039
2079
|
p = p - 1; begin
|
@@ -2041,7 +2081,7 @@ p = p - 1; begin
|
|
2041
2081
|
end
|
2042
2082
|
end
|
2043
2083
|
when 3 then
|
2044
|
-
# line
|
2084
|
+
# line 478 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2045
2085
|
begin
|
2046
2086
|
begin p = ((te))-1; end
|
2047
2087
|
begin
|
@@ -2052,23 +2092,23 @@ p = p - 1; begin
|
|
2052
2092
|
emit_options(text)
|
2053
2093
|
end
|
2054
2094
|
end
|
2055
|
-
when
|
2056
|
-
# line
|
2095
|
+
when 12 then
|
2096
|
+
# line 614 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2057
2097
|
begin
|
2058
2098
|
begin p = ((te))-1; end
|
2059
2099
|
begin
|
2060
2100
|
append_literal(data, ts, te)
|
2061
2101
|
end
|
2062
2102
|
end
|
2063
|
-
when
|
2064
|
-
# line
|
2103
|
+
when 9 then
|
2104
|
+
# line 620 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2065
2105
|
begin
|
2066
2106
|
begin p = ((te))-1; end
|
2067
2107
|
begin
|
2068
2108
|
begin
|
2069
2109
|
stack[top] = cs
|
2070
2110
|
top+= 1
|
2071
|
-
cs =
|
2111
|
+
cs = 101
|
2072
2112
|
_goto_level = _again
|
2073
2113
|
next
|
2074
2114
|
end
|
@@ -2086,7 +2126,7 @@ p = p - 1; begin
|
|
2086
2126
|
next
|
2087
2127
|
end
|
2088
2128
|
end
|
2089
|
-
when
|
2129
|
+
when 41 then
|
2090
2130
|
begin begin p = ((te))-1; end
|
2091
2131
|
|
2092
2132
|
text = copy(data, ts, te)
|
@@ -2095,7 +2135,7 @@ end
|
|
2095
2135
|
end
|
2096
2136
|
emit_options(text)
|
2097
2137
|
end
|
2098
|
-
when
|
2138
|
+
when 42 then
|
2099
2139
|
begin begin p = ((te))-1; end
|
2100
2140
|
|
2101
2141
|
case text = copy(data, ts, te)
|
@@ -2105,7 +2145,7 @@ end
|
|
2105
2145
|
when '(?<!'; emit(:assertion, :nlookbehind, text)
|
2106
2146
|
end
|
2107
2147
|
end
|
2108
|
-
when
|
2148
|
+
when 56 then
|
2109
2149
|
begin begin p = ((te))-1; end
|
2110
2150
|
|
2111
2151
|
append_literal(data, ts, te)
|
@@ -2113,17 +2153,17 @@ end
|
|
2113
2153
|
end
|
2114
2154
|
end
|
2115
2155
|
when 76 then
|
2116
|
-
# line
|
2156
|
+
# line 135 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2117
2157
|
begin
|
2118
2158
|
|
2119
2159
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2120
2160
|
raise PrematureEndError.new( text )
|
2121
2161
|
end
|
2122
|
-
# line
|
2162
|
+
# line 208 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2123
2163
|
begin
|
2124
2164
|
te = p
|
2125
2165
|
p = p - 1; begin
|
2126
|
-
emit(:set, :open,
|
2166
|
+
emit(:set, :open, '[')
|
2127
2167
|
begin
|
2128
2168
|
stack[top] = cs
|
2129
2169
|
top+= 1
|
@@ -2134,18 +2174,18 @@ p = p - 1; begin
|
|
2134
2174
|
|
2135
2175
|
end
|
2136
2176
|
end
|
2137
|
-
when
|
2138
|
-
# line
|
2177
|
+
when 20 then
|
2178
|
+
# line 135 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2139
2179
|
begin
|
2140
2180
|
|
2141
2181
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2142
2182
|
raise PrematureEndError.new( text )
|
2143
2183
|
end
|
2144
|
-
# line
|
2184
|
+
# line 208 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2145
2185
|
begin
|
2146
2186
|
begin p = ((te))-1; end
|
2147
2187
|
begin
|
2148
|
-
emit(:set, :open,
|
2188
|
+
emit(:set, :open, '[')
|
2149
2189
|
begin
|
2150
2190
|
stack[top] = cs
|
2151
2191
|
top+= 1
|
@@ -2156,14 +2196,14 @@ p = p - 1; begin
|
|
2156
2196
|
|
2157
2197
|
end
|
2158
2198
|
end
|
2159
|
-
when
|
2160
|
-
# line
|
2199
|
+
when 93 then
|
2200
|
+
# line 135 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2161
2201
|
begin
|
2162
2202
|
|
2163
2203
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2164
2204
|
raise PrematureEndError.new( text )
|
2165
2205
|
end
|
2166
|
-
# line
|
2206
|
+
# line 344 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2167
2207
|
begin
|
2168
2208
|
te = p
|
2169
2209
|
p = p - 1; begin
|
@@ -2177,14 +2217,14 @@ p = p - 1; begin
|
|
2177
2217
|
|
2178
2218
|
end
|
2179
2219
|
end
|
2180
|
-
when
|
2181
|
-
# line
|
2220
|
+
when 95 then
|
2221
|
+
# line 135 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2182
2222
|
begin
|
2183
2223
|
|
2184
2224
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2185
2225
|
raise PrematureEndError.new( text )
|
2186
2226
|
end
|
2187
|
-
# line
|
2227
|
+
# line 349 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2188
2228
|
begin
|
2189
2229
|
te = p
|
2190
2230
|
p = p - 1; begin
|
@@ -2198,14 +2238,14 @@ p = p - 1; begin
|
|
2198
2238
|
|
2199
2239
|
end
|
2200
2240
|
end
|
2201
|
-
when
|
2202
|
-
# line
|
2241
|
+
when 27 then
|
2242
|
+
# line 135 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2203
2243
|
begin
|
2204
2244
|
|
2205
2245
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2206
2246
|
raise PrematureEndError.new( text )
|
2207
2247
|
end
|
2208
|
-
# line
|
2248
|
+
# line 344 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2209
2249
|
begin
|
2210
2250
|
begin p = ((te))-1; end
|
2211
2251
|
begin
|
@@ -2219,14 +2259,14 @@ p = p - 1; begin
|
|
2219
2259
|
|
2220
2260
|
end
|
2221
2261
|
end
|
2222
|
-
when
|
2223
|
-
# line
|
2262
|
+
when 29 then
|
2263
|
+
# line 135 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2224
2264
|
begin
|
2225
2265
|
|
2226
2266
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2227
2267
|
raise PrematureEndError.new( text )
|
2228
2268
|
end
|
2229
|
-
# line
|
2269
|
+
# line 349 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2230
2270
|
begin
|
2231
2271
|
begin p = ((te))-1; end
|
2232
2272
|
begin
|
@@ -2240,14 +2280,14 @@ p = p - 1; begin
|
|
2240
2280
|
|
2241
2281
|
end
|
2242
2282
|
end
|
2243
|
-
when
|
2244
|
-
# line
|
2283
|
+
when 31 then
|
2284
|
+
# line 141 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2245
2285
|
begin
|
2246
2286
|
|
2247
2287
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2248
2288
|
validation_error(:sequence, 'sequence', text)
|
2249
2289
|
end
|
2250
|
-
# line
|
2290
|
+
# line 340 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2251
2291
|
begin
|
2252
2292
|
te = p+1
|
2253
2293
|
begin
|
@@ -2261,27 +2301,27 @@ te = p+1
|
|
2261
2301
|
end
|
2262
2302
|
end
|
2263
2303
|
when 5 then
|
2264
|
-
# line
|
2304
|
+
# line 148 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2265
2305
|
begin
|
2266
2306
|
self.group_depth = group_depth - 1 end
|
2267
|
-
# line
|
2307
|
+
# line 463 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2268
2308
|
begin
|
2269
2309
|
te = p+1
|
2270
2310
|
begin
|
2271
2311
|
emit(:group, :comment, copy(data, ts, te))
|
2272
2312
|
end
|
2273
2313
|
end
|
2274
|
-
when
|
2275
|
-
# line
|
2314
|
+
when 38 then
|
2315
|
+
# line 148 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2276
2316
|
begin
|
2277
2317
|
self.group_depth = group_depth - 1 end
|
2278
|
-
# line
|
2318
|
+
# line 532 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2279
2319
|
begin
|
2280
2320
|
te = p+1
|
2281
2321
|
begin
|
2282
2322
|
if conditional_stack.last == group_depth + 1
|
2283
2323
|
conditional_stack.pop
|
2284
|
-
emit(:conditional, :close,
|
2324
|
+
emit(:conditional, :close, ')')
|
2285
2325
|
else
|
2286
2326
|
if spacing_stack.length > 1 &&
|
2287
2327
|
spacing_stack.last[:depth] == group_depth + 1
|
@@ -2289,15 +2329,15 @@ te = p+1
|
|
2289
2329
|
self.free_spacing = spacing_stack.last[:free_spacing]
|
2290
2330
|
end
|
2291
2331
|
|
2292
|
-
emit(:group, :close,
|
2332
|
+
emit(:group, :close, ')')
|
2293
2333
|
end
|
2294
2334
|
end
|
2295
2335
|
end
|
2296
|
-
when
|
2297
|
-
# line
|
2336
|
+
when 40 then
|
2337
|
+
# line 149 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2298
2338
|
begin
|
2299
2339
|
self.set_depth = set_depth + 1 end
|
2300
|
-
# line
|
2340
|
+
# line 438 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2301
2341
|
begin
|
2302
2342
|
te = p+1
|
2303
2343
|
begin
|
@@ -2313,10 +2353,10 @@ te = p+1
|
|
2313
2353
|
end
|
2314
2354
|
end
|
2315
2355
|
when 70 then
|
2316
|
-
# line
|
2356
|
+
# line 150 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2317
2357
|
begin
|
2318
2358
|
self.set_depth = set_depth - 1 end
|
2319
|
-
# line
|
2359
|
+
# line 156 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2320
2360
|
begin
|
2321
2361
|
te = p+1
|
2322
2362
|
begin
|
@@ -2340,15 +2380,15 @@ te = p+1
|
|
2340
2380
|
end
|
2341
2381
|
end
|
2342
2382
|
when 75 then
|
2343
|
-
# line
|
2383
|
+
# line 150 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2344
2384
|
begin
|
2345
2385
|
self.set_depth = set_depth - 1 end
|
2346
|
-
# line
|
2386
|
+
# line 165 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2347
2387
|
begin
|
2348
2388
|
te = p+1
|
2349
2389
|
begin # special case, emits two tokens
|
2350
|
-
emit(:literal, :literal,
|
2351
|
-
emit(:set, :close,
|
2390
|
+
emit(:literal, :literal, '-')
|
2391
|
+
emit(:set, :close, ']')
|
2352
2392
|
if in_set?
|
2353
2393
|
begin
|
2354
2394
|
top -= 1
|
@@ -2367,11 +2407,11 @@ te = p+1
|
|
2367
2407
|
end
|
2368
2408
|
end
|
2369
2409
|
end
|
2370
|
-
when
|
2371
|
-
# line
|
2410
|
+
when 22 then
|
2411
|
+
# line 150 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2372
2412
|
begin
|
2373
2413
|
self.set_depth = set_depth - 1 end
|
2374
|
-
# line
|
2414
|
+
# line 213 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2375
2415
|
begin
|
2376
2416
|
te = p+1
|
2377
2417
|
begin
|
@@ -2396,56 +2436,56 @@ te = p+1
|
|
2396
2436
|
begin
|
2397
2437
|
te = p+1
|
2398
2438
|
end
|
2399
|
-
# line
|
2439
|
+
# line 149 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2400
2440
|
begin
|
2401
2441
|
self.set_depth = set_depth + 1 end
|
2402
|
-
when
|
2442
|
+
when 84 then
|
2403
2443
|
# line 1 "NONE"
|
2404
2444
|
begin
|
2405
2445
|
te = p+1
|
2406
2446
|
end
|
2407
|
-
# line
|
2447
|
+
# line 277 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2408
2448
|
begin
|
2409
|
-
act =
|
2410
|
-
when
|
2449
|
+
act = 17; end
|
2450
|
+
when 83 then
|
2411
2451
|
# line 1 "NONE"
|
2412
2452
|
begin
|
2413
2453
|
te = p+1
|
2414
2454
|
end
|
2415
|
-
# line
|
2455
|
+
# line 283 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2416
2456
|
begin
|
2417
|
-
act =
|
2418
|
-
when
|
2457
|
+
act = 18; end
|
2458
|
+
when 8 then
|
2419
2459
|
# line 1 "NONE"
|
2420
2460
|
begin
|
2421
2461
|
te = p+1
|
2422
2462
|
end
|
2423
|
-
# line
|
2463
|
+
# line 492 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2424
2464
|
begin
|
2425
|
-
act =
|
2465
|
+
act = 42; end
|
2426
2466
|
when 2 then
|
2427
2467
|
# line 1 "NONE"
|
2428
2468
|
begin
|
2429
2469
|
te = p+1
|
2430
2470
|
end
|
2431
|
-
# line
|
2471
|
+
# line 645 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2432
2472
|
begin
|
2433
|
-
act =
|
2434
|
-
when
|
2473
|
+
act = 56; end
|
2474
|
+
when 50 then
|
2435
2475
|
# line 1 "NONE"
|
2436
2476
|
begin
|
2437
2477
|
te = p+1
|
2438
2478
|
end
|
2439
|
-
# line
|
2479
|
+
# line 148 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2440
2480
|
begin
|
2441
2481
|
self.group_depth = group_depth - 1 end
|
2442
|
-
# line
|
2482
|
+
# line 147 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2443
2483
|
begin
|
2444
2484
|
self.group_depth = group_depth + 1 end
|
2445
|
-
# line
|
2485
|
+
# line 478 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2446
2486
|
begin
|
2447
|
-
act =
|
2448
|
-
# line
|
2487
|
+
act = 41; end
|
2488
|
+
# line 2488 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner.rb"
|
2449
2489
|
end
|
2450
2490
|
end
|
2451
2491
|
end
|
@@ -2455,7 +2495,7 @@ act = 40; end
|
|
2455
2495
|
# line 1 "NONE"
|
2456
2496
|
begin
|
2457
2497
|
ts = nil; end
|
2458
|
-
when
|
2498
|
+
when 34 then
|
2459
2499
|
# line 1 "NONE"
|
2460
2500
|
begin
|
2461
2501
|
ts = nil; end
|
@@ -2463,7 +2503,7 @@ ts = nil; end
|
|
2463
2503
|
begin
|
2464
2504
|
act = 0
|
2465
2505
|
end
|
2466
|
-
# line
|
2506
|
+
# line 2506 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner.rb"
|
2467
2507
|
end
|
2468
2508
|
|
2469
2509
|
if cs == 0
|
@@ -2484,20 +2524,20 @@ act = 0
|
|
2484
2524
|
next;
|
2485
2525
|
end
|
2486
2526
|
case _re_scanner_eof_actions[cs]
|
2487
|
-
when
|
2488
|
-
# line 8 "/Users/
|
2527
|
+
when 14 then
|
2528
|
+
# line 8 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/property.rl"
|
2489
2529
|
begin
|
2490
2530
|
|
2491
2531
|
raise PrematureEndError.new('unicode property')
|
2492
2532
|
end
|
2493
|
-
when
|
2494
|
-
# line
|
2533
|
+
when 25 then
|
2534
|
+
# line 135 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2495
2535
|
begin
|
2496
2536
|
|
2497
2537
|
text = copy(data, ts ? ts-1 : 0, -1)
|
2498
2538
|
raise PrematureEndError.new( text )
|
2499
2539
|
end
|
2500
|
-
# line
|
2540
|
+
# line 2540 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner.rb"
|
2501
2541
|
end
|
2502
2542
|
end
|
2503
2543
|
|
@@ -2508,7 +2548,7 @@ act = 0
|
|
2508
2548
|
end
|
2509
2549
|
end
|
2510
2550
|
|
2511
|
-
# line
|
2551
|
+
# line 751 "/Users/janosch/code/regexp_parser/tasks/../lib/regexp_parser/scanner/scanner.rl"
|
2512
2552
|
|
2513
2553
|
# to avoid "warning: assigned but unused variable - testEof"
|
2514
2554
|
testEof = testEof
|
@@ -2524,7 +2564,7 @@ end
|
|
2524
2564
|
"[#{set_depth}]") if in_set?
|
2525
2565
|
|
2526
2566
|
# when the entire expression is a literal run
|
2527
|
-
emit_literal if
|
2567
|
+
emit_literal if literal_run
|
2528
2568
|
|
2529
2569
|
tokens
|
2530
2570
|
end
|
@@ -2551,26 +2591,37 @@ end
|
|
2551
2591
|
def emit(type, token, text)
|
2552
2592
|
#puts "EMIT: type: #{type}, token: #{token}, text: #{text}, ts: #{ts}, te: #{te}"
|
2553
2593
|
|
2554
|
-
emit_literal if
|
2594
|
+
emit_literal if literal_run
|
2555
2595
|
|
2556
2596
|
# Ragel runs with byte-based indices (ts, te). These are of little value to
|
2557
2597
|
# end-users, so we keep track of char-based indices and emit those instead.
|
2558
2598
|
ts_char_pos = char_pos
|
2559
2599
|
te_char_pos = char_pos + text.length
|
2560
2600
|
|
2561
|
-
|
2562
|
-
block.call type, token, text, ts_char_pos, te_char_pos
|
2563
|
-
end
|
2601
|
+
tok = [type, token, text, ts_char_pos, te_char_pos]
|
2564
2602
|
|
2565
|
-
|
2603
|
+
self.prev_token = tok
|
2566
2604
|
|
2567
2605
|
self.char_pos = te_char_pos
|
2606
|
+
|
2607
|
+
if block
|
2608
|
+
block.call type, token, text, ts_char_pos, te_char_pos
|
2609
|
+
# TODO: in v3.0.0, remove `collect_tokens:` kwarg and only collect if no block given
|
2610
|
+
tokens << tok if collect_tokens
|
2611
|
+
elsif collect_tokens
|
2612
|
+
tokens << tok
|
2613
|
+
end
|
2568
2614
|
end
|
2569
2615
|
|
2616
|
+
attr_accessor :literal_run # only public for #||= to work on ruby <= 2.5
|
2617
|
+
|
2570
2618
|
private
|
2571
2619
|
|
2572
|
-
attr_accessor :
|
2573
|
-
:
|
2620
|
+
attr_accessor :block,
|
2621
|
+
:collect_tokens, :tokens, :prev_token,
|
2622
|
+
:free_spacing, :spacing_stack,
|
2623
|
+
:group_depth, :set_depth, :conditional_stack,
|
2624
|
+
:char_pos
|
2574
2625
|
|
2575
2626
|
def free_spacing?(input_object, options)
|
2576
2627
|
if options && !input_object.is_a?(String)
|
@@ -2600,14 +2651,13 @@ end
|
|
2600
2651
|
# Appends one or more characters to the literal buffer, to be emitted later
|
2601
2652
|
# by a call to emit_literal.
|
2602
2653
|
def append_literal(data, ts, te)
|
2603
|
-
self.
|
2604
|
-
literal << copy(data, ts, te)
|
2654
|
+
(self.literal_run ||= []) << copy(data, ts, te)
|
2605
2655
|
end
|
2606
2656
|
|
2607
2657
|
# Emits the literal run collected by calls to the append_literal method.
|
2608
2658
|
def emit_literal
|
2609
|
-
text =
|
2610
|
-
self.
|
2659
|
+
text = literal_run.join
|
2660
|
+
self.literal_run = nil
|
2611
2661
|
emit(:literal, :literal, text)
|
2612
2662
|
end
|
2613
2663
|
|