regextest 0.1.5 → 0.1.6
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/pre/unicode.rb +5 -0
- data/lib/regextest.rb +7 -3
- data/lib/regextest/back/element.rb +36 -13
- data/lib/regextest/back/main.rb +116 -65
- data/lib/regextest/back/result.rb +19 -8
- data/lib/regextest/common.rb +4 -1
- data/lib/regextest/front.rb +5 -0
- data/lib/regextest/front/back-refer.rb +2 -2
- data/lib/regextest/front/bracket-parser.rb +121 -103
- data/lib/regextest/front/bracket-parser.y +4 -1
- data/lib/regextest/front/bracket-scanner.rb +4 -3
- data/lib/regextest/front/char-class.rb +13 -5
- data/lib/regextest/front/letter.rb +39 -6
- data/lib/regextest/front/parenthesis.rb +2 -2
- data/lib/regextest/front/parser.rb +564 -545
- data/lib/regextest/front/parser.y +8 -3
- data/lib/regextest/front/range.rb +19 -1
- data/lib/regextest/front/scanner.rb +16 -13
- data/lib/regextest/front/special-letter.rb +63 -0
- data/lib/regextest/regex-option.rb +27 -0
- data/lib/regextest/unicode.rb +5 -0
- data/lib/regextest/version.rb +1 -1
- data/lib/tst-reg-test.rb +66 -21
- metadata +3 -2
@@ -28,6 +28,8 @@ rule
|
|
28
28
|
# a element (a letter, a character class, a range or another bracket)
|
29
29
|
brc_elm: brc_lt1 LEX_MINUS brc_lt1
|
30
30
|
{TRange.new(val[0], val[2])}
|
31
|
+
| brc_lt1 LEX_MINUS # [a-&&] pattern
|
32
|
+
{CharClass.new(val[0]).add(TLetter.new(:LEX_CHAR, val[1]))}
|
31
33
|
| brc_lt1
|
32
34
|
{val[0]}
|
33
35
|
| brc_lt2
|
@@ -48,6 +50,7 @@ rule
|
|
48
50
|
| LEX_MINUS {TLetter.new(:LEX_CHAR, val[0])} # minus as a first letter
|
49
51
|
| LEX_CODE_LITERAL {TLetter.new(:LEX_CODE_LITERAL, val[0])}
|
50
52
|
| LEX_CONTROL_LETTER {TLetter.new(:LEX_CONTROL_LETTER, val[0])}
|
53
|
+
| LEX_META_CONTROL_LETTER {TLetter.new(:LEX_META_CONTROL_LETTER, val[0])}
|
51
54
|
| LEX_META_LETTER {TLetter.new(:LEX_CONTROL_LETTER, val[0])}
|
52
55
|
| LEX_ESCAPED_LETTER {TLetter.new(:LEX_ESCAPED_LETTER, val[0])}
|
53
56
|
| LEX_UNICODE {TLetter.new(:LEX_UNICODE, val[0])}
|
@@ -55,7 +58,7 @@ rule
|
|
55
58
|
# a character class
|
56
59
|
brc_lt2: LEX_POSIX_CHAR_CLASS {TLetter.new(:LEX_POSIX_CHAR_CLASS, val[0])}
|
57
60
|
| LEX_SIMPLIFIED_CLASS {TLetter.new(:LEX_SIMPLIFIED_CLASS, val[0])}
|
58
|
-
| LEX_UNICODE_CLASS {TLetter.new(:
|
61
|
+
| LEX_UNICODE_CLASS {TLetter.new(:LEX_UNICODE_CLASS_BRACKET, val[0])}
|
59
62
|
| LEX_SPECIAL_LETTER {TLetter.new(:LEX_SPECIAL_LETTER, val[0])}
|
60
63
|
| LEX_SPACE {TLetter.new(:LEX_SPACE, val[0])}
|
61
64
|
|
@@ -23,10 +23,11 @@ class Regextest::Front::BracketScanner
|
|
23
23
|
[:LEX_CODE_LITERAL,
|
24
24
|
LexCodeLiteral ],
|
25
25
|
[:LEX_CONTROL_LETTER,
|
26
|
-
|
26
|
+
%r!\\c\\\\|\\C-\\\\|\\c[0-~]|\\C-[0-~]! ],
|
27
|
+
[:LEX_META_CONTROL_LETTER,
|
28
|
+
%r!\\M-\\C-[0-~]! ],
|
27
29
|
[:LEX_META_LETTER,
|
28
|
-
|
29
|
-
%r!\\M-(?:[a-z]|\\C-[a-z])! ],
|
30
|
+
%r!\\M-[0-~]! ],
|
30
31
|
# [:LEX_ESCAPED_LETTER,
|
31
32
|
# %r!\\[tvnrbfae #\{\}\[\]\(\)]! ], # \b is valid within character class
|
32
33
|
[:LEX_UNICODE,
|
@@ -20,13 +20,13 @@ module Regextest::Front::CharClass
|
|
20
20
|
attr_reader :candidates, :offset, :length
|
21
21
|
|
22
22
|
# Constructor
|
23
|
-
def initialize(value)
|
23
|
+
def initialize(value, caller_type = nil)
|
24
24
|
TstLog("CharClass: #{value}")
|
25
25
|
@@ascii_whole_set ||= get_ascii_whole_set
|
26
26
|
@@unicode_whole_set ||= get_unicode_whole_set
|
27
|
+
@caller_type = caller_type
|
27
28
|
|
28
|
-
|
29
|
-
@reg_options = @@parse_options[:reg_options]
|
29
|
+
@options = nil
|
30
30
|
case value
|
31
31
|
when Array
|
32
32
|
@candidates = value
|
@@ -198,6 +198,7 @@ module Regextest::Front::CharClass
|
|
198
198
|
# fixes charset using options
|
199
199
|
def set_options(options)
|
200
200
|
TstLog("CharClass set_options: #{options[:reg_options].inspect}")
|
201
|
+
@options = options
|
201
202
|
|
202
203
|
# call set_options of other bracket
|
203
204
|
@candidates.each do |candidate|
|
@@ -208,7 +209,11 @@ module Regextest::Front::CharClass
|
|
208
209
|
|
209
210
|
and_process(options) if @other_char_classes.size > 0
|
210
211
|
|
211
|
-
|
212
|
+
# somehow ignore process must be skipped when unicode
|
213
|
+
# class (\p{lower} etc.) in outside of bracket
|
214
|
+
if @caller_type != :LEX_UNICODE_CLASS
|
215
|
+
ignore_process(options)
|
216
|
+
end
|
212
217
|
|
213
218
|
# reverse char set
|
214
219
|
if @is_reverse
|
@@ -222,11 +227,14 @@ module Regextest::Front::CharClass
|
|
222
227
|
def json
|
223
228
|
#if @candidates.size > 1
|
224
229
|
@@id += 1
|
230
|
+
charset = @options[:reg_options].charset
|
225
231
|
"{" +
|
226
232
|
"\"type\": \"LEX_CHAR_CLASS\", \"id\": \"CC#{@@id}\", " +
|
227
233
|
"\"offset\": #{@offset}, \"length\": #{@length}, " +
|
228
234
|
"\"value\": [" + @candidates.map{|elem| elem.json}.join(",") +
|
229
|
-
|
235
|
+
"], " +
|
236
|
+
"\"charset\": \"#{charset}\"" +
|
237
|
+
"}"
|
230
238
|
#else
|
231
239
|
# @candidates[0].json
|
232
240
|
#end
|
@@ -38,9 +38,12 @@ module Regextest::Front::Letter
|
|
38
38
|
when :LEX_SIMPLE_ESCAPE
|
39
39
|
@data_type = :LEX_CHAR
|
40
40
|
@obj = CharClass.new([ TRange.new(val[1..1])])
|
41
|
-
when :LEX_CODE_LITERAL, :LEX_ESCAPED_LETTER, :LEX_UNICODE, :
|
41
|
+
when :LEX_CODE_LITERAL, :LEX_ESCAPED_LETTER, :LEX_UNICODE, :LEX_OCTET
|
42
42
|
@data_type = :LEX_CHAR
|
43
43
|
@obj = CharClass.new([ TRange.new(eval('"'+ val + '"'))]) # convert using ruby's eval
|
44
|
+
when :LEX_CONTROL_LETTER, :LEX_META_LETTER
|
45
|
+
@data_type = :LEX_CHAR
|
46
|
+
@obj = generate_control_letter(val, type)
|
44
47
|
when :LEX_BRACKET
|
45
48
|
@obj = Regextest::Front::Bracket.new(val)
|
46
49
|
when :LEX_SIMPLIFIED_CLASS
|
@@ -48,7 +51,9 @@ module Regextest::Front::Letter
|
|
48
51
|
when :LEX_POSIX_CHAR_CLASS
|
49
52
|
@obj = generate_char_class(val)
|
50
53
|
when :LEX_UNICODE_CLASS
|
51
|
-
@obj = generate_unicode_char(val)
|
54
|
+
@obj = generate_unicode_char(val, type)
|
55
|
+
when :LEX_UNICODE_CLASS_BRACKET
|
56
|
+
@obj = generate_unicode_char(val, type)
|
52
57
|
when :LEX_ANY_LETTER
|
53
58
|
@obj = generate_any_char(val)
|
54
59
|
when :LEX_SPECIAL_LETTER
|
@@ -61,14 +66,40 @@ module Regextest::Front::Letter
|
|
61
66
|
end
|
62
67
|
end
|
63
68
|
|
69
|
+
# generate control letter \c-x, \m-x
|
70
|
+
def generate_control_letter(val, type)
|
71
|
+
suffix = val[-1..-1]
|
72
|
+
codepoint = suffix.unpack("U*")[0]
|
73
|
+
case type
|
74
|
+
when :LEX_CONTROL_LETTER
|
75
|
+
if ('0'..'?').include?(suffix)
|
76
|
+
result = codepoint - 0x20
|
77
|
+
elsif ('@'..'_').include?(suffix)
|
78
|
+
result = codepoint - 0x40
|
79
|
+
elsif ('`'..'~').include?(suffix)
|
80
|
+
result = codepoint - 0x60
|
81
|
+
else
|
82
|
+
raise "Internal error: invalid control letter (#{val})"
|
83
|
+
end
|
84
|
+
when :LEX_META_LETTER
|
85
|
+
result = codepoint + 0x80
|
86
|
+
pp [result].pack("U*")
|
87
|
+
else
|
88
|
+
raise "Internal error: invalid type #{type}"
|
89
|
+
end
|
90
|
+
@obj = CharClass.new([ TRange.new([result].pack("U*"))])
|
91
|
+
end
|
92
|
+
|
64
93
|
# generate whole set of letters (depends on option)
|
65
94
|
def generate_any_char(val)
|
66
95
|
if @options[:reg_options].is_unicode?
|
67
96
|
obj = CharClass.new(TstConstUnicodeCharSet)
|
68
97
|
else
|
69
|
-
obj = CharClass.new(
|
98
|
+
obj = CharClass.new(TstConstUnicodeCharSet)
|
99
|
+
# obj = CharClass.new( [ TRange.new("\x20", "\x7e") ] )
|
70
100
|
end
|
71
101
|
|
102
|
+
# add new-line if multi-line option specified
|
72
103
|
if( @options[:reg_options].is_multiline? )
|
73
104
|
obj.add_ranges( [ TRange.new("\n") ] )
|
74
105
|
end
|
@@ -177,12 +208,12 @@ module Regextest::Front::Letter
|
|
177
208
|
end
|
178
209
|
|
179
210
|
# generate Unicode class (ie. \p{...} | \P{...})
|
180
|
-
def generate_unicode_char(val)
|
211
|
+
def generate_unicode_char(val, type)
|
181
212
|
if(md = val.match(/(p|P)\{(\^?)(\w+)\}/))
|
182
213
|
class_name = md[3].downcase
|
183
214
|
reverse = (md[2] && md[2]=="^")?true:false
|
184
215
|
|
185
|
-
obj = CharClass.new(class_name)
|
216
|
+
obj = CharClass.new(class_name, type)
|
186
217
|
else
|
187
218
|
raise "Internal error, inconsistent Unicode class #{val}"
|
188
219
|
end
|
@@ -297,9 +328,11 @@ module Regextest::Front::Letter
|
|
297
328
|
# transform to json format
|
298
329
|
def json
|
299
330
|
@@id += 1
|
331
|
+
charset = @options[:reg_options].charset
|
300
332
|
"{" +
|
301
333
|
"\"type\": \"#{@data_type}\", \"id\": \"L#{@@id}\", \"value\": #{@obj.json}, " +
|
302
|
-
"\"offset\": #{@offset}, \"length\": #{@length}" +
|
334
|
+
"\"offset\": #{@offset}, \"length\": #{@length}, " +
|
335
|
+
"\"charset\": \"#{charset}\"" +
|
303
336
|
"}"
|
304
337
|
end
|
305
338
|
end
|
@@ -50,7 +50,7 @@ module Regextest::Front::Parenthesis
|
|
50
50
|
|
51
51
|
# get name of parenthesis (if any)
|
52
52
|
def get_name(prefix)
|
53
|
-
if(md = prefix.match(
|
53
|
+
if(md = prefix.match(/(?u:^[<'](\w+)[>']$)/))
|
54
54
|
md[1]
|
55
55
|
else
|
56
56
|
nil
|
@@ -65,7 +65,7 @@ module Regextest::Front::Parenthesis
|
|
65
65
|
if !condition_name
|
66
66
|
raise "condition number #{prefix} is invalid"
|
67
67
|
end
|
68
|
-
elsif(md = prefix.match(
|
68
|
+
elsif(md = prefix.match(/(?u:^\(<(\w+)>\)|\('(\w+)'\)$)/))
|
69
69
|
match_string = md[1] || md[2]
|
70
70
|
condition_name = @options[:parens].get_paren(match_string)
|
71
71
|
if !condition_name
|
@@ -1,6 +1,6 @@
|
|
1
1
|
#
|
2
2
|
# DO NOT MODIFY!!!!
|
3
|
-
# This file is automatically generated by Racc 1.4.
|
3
|
+
# This file is automatically generated by Racc 1.4.14
|
4
4
|
# from Racc grammer file "".
|
5
5
|
#
|
6
6
|
|
@@ -17,11 +17,12 @@ require 'regextest/front/sequence' # parser class for a sequence of elemen
|
|
17
17
|
require 'regextest/front/bracket' # parser class for a character class (bracket)
|
18
18
|
require 'regextest/front/anchor' # parser class for a anchor
|
19
19
|
require 'regextest/front/back-refer' # parser class for a back reference
|
20
|
+
require 'regextest/front/special-letter' # parser class for a special letter
|
20
21
|
require 'regextest/front/bracket-parser' # bracket parser
|
21
22
|
|
22
23
|
class RegextestFrontParser < Racc::Parser
|
23
24
|
|
24
|
-
module_eval(<<'...end parser.y/module_eval...', 'parser.y',
|
25
|
+
module_eval(<<'...end parser.y/module_eval...', 'parser.y', 227)
|
25
26
|
# modules for sharing procedures with bracket parser
|
26
27
|
include Regextest::Front::Empty
|
27
28
|
include Regextest::Front::Letter
|
@@ -33,6 +34,7 @@ include Regextest::Front::Sequence
|
|
33
34
|
include Regextest::Front::Bracket
|
34
35
|
include Regextest::Front::Anchor
|
35
36
|
include Regextest::Front::BackRefer
|
37
|
+
include Regextest::Front::SpecialLetter
|
36
38
|
|
37
39
|
# execute to parse
|
38
40
|
def parse(lex_words, options)
|
@@ -74,133 +76,134 @@ end
|
|
74
76
|
##### State transition tables begin ###
|
75
77
|
|
76
78
|
clist = [
|
77
|
-
'4,6,7,
|
78
|
-
'29,30,31,32,33,34,35,36,37,38,39,40,41,42,
|
79
|
-
'
|
80
|
-
'
|
81
|
-
'
|
82
|
-
'
|
83
|
-
'
|
84
|
-
'
|
85
|
-
'136,
|
86
|
-
'24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,144
|
87
|
-
'
|
88
|
-
'
|
89
|
-
'
|
90
|
-
'
|
91
|
-
'
|
92
|
-
'
|
93
|
-
'
|
94
|
-
'26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,
|
95
|
-
'58,59,60,61,62,63,64,65,66
|
96
|
-
'81,82,83,
|
97
|
-
'22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42
|
98
|
-
',
|
99
|
-
'122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,
|
100
|
-
'
|
101
|
-
'120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135
|
102
|
-
'
|
103
|
-
'118
|
104
|
-
'135,136,
|
105
|
-
'116,117,118
|
106
|
-
'133,134,135,136,
|
107
|
-
'
|
108
|
-
'131,132,133,134,135,136,
|
109
|
-
'112,113,
|
110
|
-
'129,130,131,132,133,134,135,136,
|
111
|
-
'
|
112
|
-
'127,128,129,130,131,132,133,134,135,136,
|
113
|
-
'140,141,
|
114
|
-
'125,126,127,128,129,130,131,132,133,134,135,136,
|
115
|
-
'
|
116
|
-
'123,124,125,126,127,128,129,130,131,132,133,134,135,136,
|
117
|
-
'
|
118
|
-
'121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136
|
119
|
-
'
|
120
|
-
'73,74,75,76,77,78,79,80,81,82,83,
|
121
|
-
'59,60,61,62,63,64,65,66
|
122
|
-
'82,83,
|
123
|
-
'23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42
|
124
|
-
'
|
125
|
-
'123,124,125,126,127,128,129,130,131,132,133,134,135,136,
|
126
|
-
'
|
127
|
-
'121,122,123,124,125,126,127,128,129,130,131,132,133,134,135
|
128
|
-
'
|
129
|
-
'119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,
|
130
|
-
'
|
131
|
-
'117,118
|
132
|
-
'134,135,136,
|
133
|
-
'115,116,117,118
|
134
|
-
'132,133,134,135,136,
|
135
|
-
'65,66
|
136
|
-
'87,
|
137
|
-
'120,121,122,123,124,125,126,127,128,129,130,131,132,133,134
|
138
|
-
'
|
139
|
-
'118
|
140
|
-
'135,136,
|
141
|
-
'116,117,118
|
142
|
-
'133,134,135,136,
|
143
|
-
'
|
144
|
-
'131,132,133,134,135,136,
|
145
|
-
'112,113,
|
146
|
-
'129,130,131,132,133,134,135,136,
|
147
|
-
'
|
148
|
-
'127,128,129,130,131,132,133,134,135,136,
|
149
|
-
'140,141,
|
150
|
-
'125,126,127,128,129,130,131,132,133,134,135,136,
|
151
|
-
'
|
152
|
-
'123,124,125,126,127,128,129,130,131,132,133,134,135,136,
|
153
|
-
'
|
154
|
-
'121,122,123,124,125,126,127,128,129,130,131,132,133,134,135
|
155
|
-
'
|
156
|
-
'119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,
|
157
|
-
'
|
158
|
-
'117,118
|
159
|
-
'134,135,136,
|
160
|
-
'115,116,117,118
|
161
|
-
'132,133,134,135,136,
|
162
|
-
'113,
|
163
|
-
'130,131,132,133,134,135,136,
|
164
|
-
'111,112,113,
|
165
|
-
'128,129,130,131,132,133,134,135,136,
|
166
|
-
'141,
|
167
|
-
'126,127,128,129,130,131,132,133,134,135,136,
|
168
|
-
'12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30
|
169
|
-
'35,36,37,38,39,40,41,42,
|
170
|
-
'68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,
|
171
|
-
',10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26
|
172
|
-
'32,33,34,35,36,37,38,39,40,41,42,
|
173
|
-
'19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41',
|
174
|
-
'42,100,101,,56,,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74',
|
175
|
-
'75,76,77,78,79,80,81,82,83,85,86,88,84,87,6,7,,10,,11,12,13,14,15,16',
|
176
|
-
'17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39',
|
177
|
-
'40,41,42,52,53,,56,,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72',
|
178
|
-
'73,74,75,76,77,78,79,80,81,82,83,85,86,88,84,87,100,101,,56,,57,58,59',
|
179
|
-
'60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82',
|
180
|
-
'83,85,86,88,84,87,46,47,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23',
|
181
|
-
'24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,100,101,,56',
|
182
|
-
',57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79',
|
183
|
-
'80,81,82,83,85,86,88,84,87,46,47,,10,,11,12,13,14,15,16,17,18,19,20',
|
184
|
-
'21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,52',
|
185
|
-
'53,,56,,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76',
|
186
|
-
'77,78,79,80,81,82,83,85,86,88,84,87,100,101,,56,,57,58,59,60,61,62,63',
|
187
|
-
'64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,85,86,88',
|
188
|
-
'84,87,46,47,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27',
|
189
|
-
'28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,52,53,,56,,57,58,59,60',
|
190
|
-
'61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83',
|
191
|
-
'85,86,88,84,87,46,47,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24',
|
192
|
-
'25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,6,7,,10,,11,12',
|
79
|
+
'4,6,7,50,10,96,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28',
|
80
|
+
'29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,145,45,44,144,140,143,141',
|
81
|
+
'142,111,112,113,115,116,117,118,103,119,120,121,122,123,124,125,126',
|
82
|
+
'127,128,129,130,131,132,133,114,134,135,136,137,139,110,138,145,148',
|
83
|
+
'103,144,140,143,141,142,111,112,113,115,116,117,118,50,119,120,121,122',
|
84
|
+
'123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137,139',
|
85
|
+
'110,138,145,45,,144,140,143,141,142,111,112,113,115,116,117,118,,119',
|
86
|
+
'120,121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135',
|
87
|
+
'136,137,139,110,138,4,6,7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23',
|
88
|
+
'24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,145,,,144',
|
89
|
+
'140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124',
|
90
|
+
'125,126,127,128,129,130,131,132,133,114,134,135,136,137,139,110,138',
|
91
|
+
'145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122',
|
92
|
+
'123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137,139',
|
93
|
+
'110,138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120',
|
94
|
+
'121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135,136',
|
95
|
+
'137,139,110,138,4,6,7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24',
|
96
|
+
'25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,94,53,54,,57',
|
97
|
+
',58,59,60,61,62,63,64,65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79',
|
98
|
+
'80,81,82,83,84,86,87,89,85,88,4,6,7,,10,,11,12,13,14,15,16,17,18,19',
|
99
|
+
'20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42',
|
100
|
+
'43,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121',
|
101
|
+
'122,123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137',
|
102
|
+
'139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119',
|
103
|
+
'120,121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135',
|
104
|
+
'136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117',
|
105
|
+
'118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,114',
|
106
|
+
'134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115',
|
107
|
+
'116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132',
|
108
|
+
'133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112',
|
109
|
+
'113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130',
|
110
|
+
'131,132,133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142',
|
111
|
+
'111,112,113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128',
|
112
|
+
'129,130,131,132,133,114,134,135,136,137,139,110,138,145,,,144,140,143',
|
113
|
+
'141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124,125,126',
|
114
|
+
'127,128,129,130,131,132,133,114,134,135,136,137,139,110,138,145,,,144',
|
115
|
+
'140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124',
|
116
|
+
'125,126,127,128,129,130,131,132,133,114,134,135,136,137,139,110,138',
|
117
|
+
'145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122',
|
118
|
+
'123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137,139',
|
119
|
+
'110,138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120',
|
120
|
+
'121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135,136',
|
121
|
+
'137,139,110,138,94,53,54,,57,,58,59,60,61,62,63,64,65,66,,67,68,69,70',
|
122
|
+
'71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,94,53,54,,57',
|
123
|
+
',58,59,60,61,62,63,64,65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79',
|
124
|
+
'80,81,82,83,84,86,87,89,85,88,4,6,7,,10,,11,12,13,14,15,16,17,18,19',
|
125
|
+
'20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42',
|
126
|
+
'43,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121',
|
127
|
+
'122,123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137',
|
128
|
+
'139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119',
|
129
|
+
'120,121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135',
|
130
|
+
'136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117',
|
131
|
+
'118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,114',
|
132
|
+
'134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115',
|
133
|
+
'116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132',
|
134
|
+
'133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112',
|
135
|
+
'113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130',
|
136
|
+
'131,132,133,114,134,135,136,137,139,110,138,94,53,54,,57,,58,59,60,61',
|
137
|
+
'62,63,64,65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84',
|
138
|
+
'86,87,89,85,88,145,,,144,140,143,141,142,111,112,113,115,116,117,118',
|
139
|
+
',119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,114,134',
|
140
|
+
'135,136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115,116',
|
141
|
+
'117,118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133',
|
142
|
+
'114,134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112,113',
|
143
|
+
'115,116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130,131',
|
144
|
+
'132,133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142,111',
|
145
|
+
'112,113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128,129',
|
146
|
+
'130,131,132,133,114,134,135,136,137,139,110,138,145,,,144,140,143,141',
|
147
|
+
'142,111,112,113,115,116,117,118,,119,120,121,122,123,124,125,126,127',
|
148
|
+
'128,129,130,131,132,133,114,134,135,136,137,139,110,138,145,,,144,140',
|
149
|
+
'143,141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124,125',
|
150
|
+
'126,127,128,129,130,131,132,133,114,134,135,136,137,139,110,138,145',
|
151
|
+
',,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122,123',
|
152
|
+
'124,125,126,127,128,129,130,131,132,133,114,134,135,136,137,139,110',
|
153
|
+
'138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119,120,121',
|
154
|
+
'122,123,124,125,126,127,128,129,130,131,132,133,114,134,135,136,137',
|
155
|
+
'139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117,118,,119',
|
156
|
+
'120,121,122,123,124,125,126,127,128,129,130,131,132,133,114,134,135',
|
157
|
+
'136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115,116,117',
|
158
|
+
'118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,114',
|
159
|
+
'134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112,113,115',
|
160
|
+
'116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130,131,132',
|
161
|
+
'133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142,111,112',
|
162
|
+
'113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128,129,130',
|
163
|
+
'131,132,133,114,134,135,136,137,139,110,138,145,,,144,140,143,141,142',
|
164
|
+
'111,112,113,115,116,117,118,,119,120,121,122,123,124,125,126,127,128',
|
165
|
+
'129,130,131,132,133,114,134,135,136,137,139,110,138,145,,,144,140,143',
|
166
|
+
'141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124,125,126',
|
167
|
+
'127,128,129,130,131,132,133,114,134,135,136,137,139,110,138,145,,,144',
|
168
|
+
'140,143,141,142,111,112,113,115,116,117,118,,119,120,121,122,123,124',
|
169
|
+
'125,126,127,128,129,130,131,132,133,114,134,135,136,137,139,110,138',
|
170
|
+
'6,7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30',
|
171
|
+
'31,32,33,34,35,36,37,38,39,40,41,42,43,101,102,,57,,58,59,60,61,62,63',
|
172
|
+
'64,65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87',
|
173
|
+
'89,85,88,47,48,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26',
|
174
|
+
'27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,47,48,,10,,11,12',
|
193
175
|
'13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35',
|
194
|
-
'36,37,38,39,40,41,42,
|
195
|
-
'69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,
|
176
|
+
'36,37,38,39,40,41,42,43,101,102,,57,,58,59,60,61,62,63,64,65,66,,67',
|
177
|
+
'68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,6',
|
178
|
+
'7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31',
|
179
|
+
'32,33,34,35,36,37,38,39,40,41,42,43,53,54,,57,,58,59,60,61,62,63,64',
|
180
|
+
'65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89',
|
181
|
+
'85,88,101,102,,57,,58,59,60,61,62,63,64,65,66,,67,68,69,70,71,72,73',
|
182
|
+
'74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,47,48,,10,,11,12,13',
|
183
|
+
'14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36',
|
184
|
+
'37,38,39,40,41,42,43,101,102,,57,,58,59,60,61,62,63,64,65,66,,67,68',
|
185
|
+
'69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,47,48',
|
186
|
+
',10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31',
|
187
|
+
'32,33,34,35,36,37,38,39,40,41,42,43,53,54,,57,,58,59,60,61,62,63,64',
|
188
|
+
'65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89',
|
189
|
+
'85,88,101,102,,57,,58,59,60,61,62,63,64,65,66,,67,68,69,70,71,72,73',
|
190
|
+
'74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,47,48,,10,,11,12,13',
|
191
|
+
'14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36',
|
192
|
+
'37,38,39,40,41,42,43,53,54,,57,,58,59,60,61,62,63,64,65,66,,67,68,69',
|
193
|
+
'70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,47,48,,10',
|
196
194
|
',11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33',
|
197
|
-
'34,35,36,37,38,39,40,41,42,6,7,,10,,11,12,13,14,15,16,17,18,19,20
|
198
|
-
'22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,
|
199
|
-
',
|
200
|
-
'78,79,80,81,82,83,
|
201
|
-
'
|
202
|
-
'
|
203
|
-
|
195
|
+
'34,35,36,37,38,39,40,41,42,43,6,7,,10,,11,12,13,14,15,16,17,18,19,20',
|
196
|
+
'21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43',
|
197
|
+
'53,54,,57,,58,59,60,61,62,63,64,65,66,,67,68,69,70,71,72,73,74,75,76',
|
198
|
+
'77,78,79,80,81,82,83,84,86,87,89,85,88,6,7,,10,,11,12,13,14,15,16,17',
|
199
|
+
'18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40',
|
200
|
+
'41,42,43,6,7,,10,,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27',
|
201
|
+
'28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,53,54,,57,,58,59,60',
|
202
|
+
'61,62,63,64,65,66,,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83',
|
203
|
+
'84,86,87,89,85,88,101,102,,57,,58,59,60,61,62,63,64,65,66,,67,68,69',
|
204
|
+
'70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,86,87,89,85,88,148,148',
|
205
|
+
'45,45,45,154,153,150,146,155,148,,,,,147' ]
|
206
|
+
racc_action_table = arr = ::Array.new(2607, nil)
|
204
207
|
idx = 0
|
205
208
|
clist.each do |str|
|
206
209
|
str.split(',', -1).each do |i|
|
@@ -210,134 +213,135 @@ clist = [
|
|
210
213
|
end
|
211
214
|
|
212
215
|
clist = [
|
213
|
-
'0,0,0,5,0,
|
214
|
-
'0,0,0,0,
|
215
|
-
'
|
216
|
-
'
|
217
|
-
'
|
218
|
-
'
|
216
|
+
'0,0,0,5,0,44,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0',
|
217
|
+
'0,0,0,0,0,145,2,1,145,145,145,145,145,145,145,145,145,145,145,145,52',
|
218
|
+
'145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145,145',
|
219
|
+
'145,145,145,145,145,145,144,149,100,144,144,144,144,144,144,144,144',
|
220
|
+
'144,144,144,144,46,144,144,144,144,144,144,144,144,144,144,144,144,144',
|
221
|
+
'144,144,144,144,144,144,144,144,144,144,143,49,,143,143,143,143,143',
|
222
|
+
'143,143,143,143,143,143,143,,143,143,143,143,143,143,143,143,143,143',
|
223
|
+
'143,143,143,143,143,143,143,143,143,143,143,143,143,4,4,4,,4,,4,4,4',
|
224
|
+
'4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,142,,,142',
|
225
|
+
'142,142,142,142,142,142,142,142,142,142,142,,142,142,142,142,142,142',
|
219
226
|
'142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142,142',
|
220
|
-
'
|
221
|
-
'4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,141,,,141,141,141',
|
227
|
+
'141,,,141,141,141,141,141,141,141,141,141,141,141,141,,141,141,141,141',
|
222
228
|
'141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141,141',
|
223
|
-
'141,141,
|
224
|
-
'140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140',
|
229
|
+
'141,141,140,,,140,140,140,140,140,140,140,140,140,140,140,140,,140,140',
|
225
230
|
'140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140,140',
|
226
|
-
'
|
231
|
+
'140,140,140,140,10,10,10,,10,,10,10,10,10,10,10,10,10,10,10,10,10,10',
|
232
|
+
'10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,11,11,11',
|
233
|
+
',11,,11,11,11,11,11,11,11,11,11,,11,11,11,11,11,11,11,11,11,11,11,11',
|
234
|
+
'11,11,11,11,11,11,11,11,11,11,11,12,12,12,,12,,12,12,12,12,12,12,12',
|
235
|
+
'12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12,12',
|
236
|
+
'12,12,12,139,,,139,139,139,139,139,139,139,139,139,139,139,139,,139',
|
227
237
|
'139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139,139',
|
228
|
-
'139,139,
|
229
|
-
'
|
230
|
-
'
|
231
|
-
'
|
232
|
-
'
|
233
|
-
',
|
234
|
-
'
|
235
|
-
'
|
236
|
-
'
|
237
|
-
'
|
238
|
-
'
|
239
|
-
'
|
240
|
-
'135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135,135',
|
241
|
-
'135,135,135,135,135,135,135,134,,,134,134,134,134,134,134,134,134,134',
|
242
|
-
'134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,134',
|
243
|
-
'134,134,134,134,134,134,134,134,134,133,,,133,133,133,133,133,133,133',
|
238
|
+
'139,139,139,139,139,138,,,138,138,138,138,138,138,138,138,138,138,138',
|
239
|
+
'138,,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138,138',
|
240
|
+
'138,138,138,138,138,138,138,137,,,137,137,137,137,137,137,137,137,137',
|
241
|
+
'137,137,137,,137,137,137,137,137,137,137,137,137,137,137,137,137,137',
|
242
|
+
'137,137,137,137,137,137,137,137,137,136,,,136,136,136,136,136,136,136',
|
243
|
+
'136,136,136,136,136,,136,136,136,136,136,136,136,136,136,136,136,136',
|
244
|
+
'136,136,136,136,136,136,136,136,136,136,136,135,,,135,135,135,135,135',
|
245
|
+
'135,135,135,135,135,135,135,,135,135,135,135,135,135,135,135,135,135',
|
246
|
+
'135,135,135,135,135,135,135,135,135,135,135,135,135,134,,,134,134,134',
|
247
|
+
'134,134,134,134,134,134,134,134,134,,134,134,134,134,134,134,134,134',
|
248
|
+
'134,134,134,134,134,134,134,134,134,134,134,134,134,134,134,133,,,133',
|
249
|
+
'133,133,133,133,133,133,133,133,133,133,133,,133,133,133,133,133,133',
|
244
250
|
'133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133,133',
|
245
|
-
'
|
251
|
+
'132,,,132,132,132,132,132,132,132,132,132,132,132,132,,132,132,132,132',
|
246
252
|
'132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132',
|
247
|
-
'132,132,
|
253
|
+
'132,132,131,,,131,131,131,131,131,131,131,131,131,131,131,131,,131,131',
|
248
254
|
'131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131,131',
|
249
|
-
'131,131,131,131,
|
250
|
-
'130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130',
|
251
|
-
'130,130,130,130,130,130,
|
252
|
-
'
|
253
|
-
'
|
254
|
-
'
|
255
|
-
'
|
256
|
-
'
|
257
|
-
'
|
258
|
-
'
|
259
|
-
'
|
260
|
-
'
|
255
|
+
'131,131,131,131,130,,,130,130,130,130,130,130,130,130,130,130,130,130',
|
256
|
+
',130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130,130',
|
257
|
+
'130,130,130,130,130,130,57,57,57,,57,,57,57,57,57,57,57,57,57,57,,57',
|
258
|
+
'57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,57,58',
|
259
|
+
'58,58,,58,,58,58,58,58,58,58,58,58,58,,58,58,58,58,58,58,58,58,58,58',
|
260
|
+
'58,58,58,58,58,58,58,58,58,58,58,58,58,59,59,59,,59,,59,59,59,59,59',
|
261
|
+
'59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59,59',
|
262
|
+
'59,59,59,59,59,89,,,89,89,89,89,89,89,89,89,89,89,89,89,,89,89,89,89',
|
263
|
+
'89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,89,129,,,129,129',
|
264
|
+
'129,129,129,129,129,129,129,129,129,129,,129,129,129,129,129,129,129',
|
265
|
+
'129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,129,128',
|
266
|
+
',,128,128,128,128,128,128,128,128,128,128,128,128,,128,128,128,128,128',
|
261
267
|
'128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128,128',
|
262
|
-
'128,
|
268
|
+
'128,127,,,127,127,127,127,127,127,127,127,127,127,127,127,,127,127,127',
|
263
269
|
'127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127,127',
|
264
|
-
'127,127,127,
|
270
|
+
'127,127,127,126,,,126,126,126,126,126,126,126,126,126,126,126,126,,126',
|
265
271
|
'126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126,126',
|
266
|
-
'126,126,126,126,126,
|
272
|
+
'126,126,126,126,126,94,94,94,,94,,94,94,94,94,94,94,94,94,94,,94,94',
|
273
|
+
'94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,94,125,',
|
274
|
+
',125,125,125,125,125,125,125,125,125,125,125,125,,125,125,125,125,125',
|
267
275
|
'125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125,125',
|
268
|
-
'125,
|
269
|
-
'93,93,93,,93,,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93',
|
270
|
-
'93,93,93,93,93,93,93,93,93,93,93,93,93,93,124,,,124,124,124,124,124',
|
276
|
+
'125,124,,,124,124,124,124,124,124,124,124,124,124,124,124,,124,124,124',
|
271
277
|
'124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124',
|
272
|
-
'124,124,124,
|
278
|
+
'124,124,124,123,,,123,123,123,123,123,123,123,123,123,123,123,123,,123',
|
273
279
|
'123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123,123',
|
274
|
-
'123,123,123,123,123,
|
275
|
-
'122
|
276
|
-
'122,122,122,122,122,122,122,
|
277
|
-
'121
|
278
|
-
'121,121,121,121,121,121,121,121,121,
|
279
|
-
'
|
280
|
-
'120,120,120,120,120,120,120,120,120,120,120,
|
281
|
-
'
|
282
|
-
'119,119,119,119,119,119,119,119,119,119,119,119,119,
|
283
|
-
'
|
284
|
-
'118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,
|
285
|
-
'
|
280
|
+
'123,123,123,123,123,122,,,122,122,122,122,122,122,122,122,122,122,122',
|
281
|
+
'122,,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122,122',
|
282
|
+
'122,122,122,122,122,122,122,121,,,121,121,121,121,121,121,121,121,121',
|
283
|
+
'121,121,121,,121,121,121,121,121,121,121,121,121,121,121,121,121,121',
|
284
|
+
'121,121,121,121,121,121,121,121,121,120,,,120,120,120,120,120,120,120',
|
285
|
+
'120,120,120,120,120,,120,120,120,120,120,120,120,120,120,120,120,120',
|
286
|
+
'120,120,120,120,120,120,120,120,120,120,120,119,,,119,119,119,119,119',
|
287
|
+
'119,119,119,119,119,119,119,,119,119,119,119,119,119,119,119,119,119',
|
288
|
+
'119,119,119,119,119,119,119,119,119,119,119,119,119,118,,,118,118,118',
|
289
|
+
'118,118,118,118,118,118,118,118,118,,118,118,118,118,118,118,118,118',
|
290
|
+
'118,118,118,118,118,118,118,118,118,118,118,118,118,118,118,117,,,117',
|
291
|
+
'117,117,117,117,117,117,117,117,117,117,117,,117,117,117,117,117,117',
|
286
292
|
'117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117,117',
|
287
|
-
'
|
293
|
+
'116,,,116,116,116,116,116,116,116,116,116,116,116,116,,116,116,116,116',
|
288
294
|
'116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116,116',
|
289
|
-
'116,116,
|
295
|
+
'116,116,115,,,115,115,115,115,115,115,115,115,115,115,115,115,,115,115',
|
290
296
|
'115,115,115,115,115,115,115,115,115,115,115,115,115,115,115,115,115',
|
291
|
-
'115,115,115,115,
|
292
|
-
'114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114',
|
293
|
-
'114,114,114,114,114,114,
|
294
|
-
',,
|
295
|
-
'
|
296
|
-
'
|
297
|
-
'
|
298
|
-
'
|
299
|
-
'
|
300
|
-
'
|
301
|
-
'
|
302
|
-
'
|
303
|
-
'
|
304
|
-
'
|
305
|
-
'
|
306
|
-
'
|
307
|
-
'
|
308
|
-
'
|
309
|
-
'104,104,104,104,104,104,104,104,104,104,104,
|
310
|
-
'
|
311
|
-
'
|
312
|
-
'
|
313
|
-
'101,101,101,101,101,101,101,101,101,101,101,101,101,101,
|
314
|
-
'
|
315
|
-
'
|
316
|
-
'
|
317
|
-
'
|
318
|
-
'
|
319
|
-
'
|
320
|
-
'
|
321
|
-
'
|
322
|
-
'
|
323
|
-
'
|
324
|
-
'
|
325
|
-
'
|
326
|
-
'
|
327
|
-
'
|
328
|
-
'
|
329
|
-
'
|
330
|
-
'
|
331
|
-
'
|
332
|
-
'
|
333
|
-
',
|
334
|
-
'
|
335
|
-
'47,47,47,47,47,47,47,47,47,47,
|
336
|
-
'
|
337
|
-
'
|
338
|
-
|
339
|
-
'50,50,50,50,106,105,94,90,107,106,105,94,90,107,91,,,,,91' ]
|
340
|
-
racc_action_check = arr = ::Array.new(2540, nil)
|
297
|
+
'115,115,115,115,114,,,114,114,114,114,114,114,114,114,114,114,114,114',
|
298
|
+
',114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114,114',
|
299
|
+
'114,114,114,114,114,114,111,,,111,111,111,111,111,111,111,111,111,111',
|
300
|
+
'111,111,,111,111,111,111,111,111,111,111,111,111,111,111,111,111,111',
|
301
|
+
'111,111,111,111,111,111,111,111,112,,,112,112,112,112,112,112,112,112',
|
302
|
+
'112,112,112,112,,112,112,112,112,112,112,112,112,112,112,112,112,112',
|
303
|
+
'112,112,112,112,112,112,112,112,112,112,113,,,113,113,113,113,113,113',
|
304
|
+
'113,113,113,113,113,113,,113,113,113,113,113,113,113,113,113,113,113',
|
305
|
+
'113,113,113,113,113,113,113,113,113,113,113,113,54,54,,54,,54,54,54',
|
306
|
+
'54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54,54',
|
307
|
+
'54,54,54,54,54,54,54,191,191,,191,,191,191,191,191,191,191,191,191,191',
|
308
|
+
',191,191,191,191,191,191,191,191,191,191,191,191,191,191,191,191,191',
|
309
|
+
'191,191,191,191,191,191,152,152,,152,,152,152,152,152,152,152,152,152',
|
310
|
+
'152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152,152',
|
311
|
+
'152,152,152,152,152,152,152,152,105,105,,105,,105,105,105,105,105,105',
|
312
|
+
'105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105,105',
|
313
|
+
'105,105,105,105,105,105,105,105,105,105,104,104,,104,,104,104,104,104',
|
314
|
+
'104,104,104,104,104,,104,104,104,104,104,104,104,104,104,104,104,104',
|
315
|
+
'104,104,104,104,104,104,104,104,104,104,104,102,102,,102,,102,102,102',
|
316
|
+
'102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102,102',
|
317
|
+
'102,102,102,102,102,102,102,102,102,102,102,102,102,101,101,,101,,101',
|
318
|
+
'101,101,101,101,101,101,101,101,,101,101,101,101,101,101,101,101,101',
|
319
|
+
'101,101,101,101,101,101,101,101,101,101,101,101,101,101,151,151,,151',
|
320
|
+
',151,151,151,151,151,151,151,151,151,,151,151,151,151,151,151,151,151',
|
321
|
+
'151,151,151,151,151,151,151,151,151,151,151,151,151,151,151,99,99,,99',
|
322
|
+
',99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99',
|
323
|
+
'99,99,99,99,99,99,99,99,99,99,98,98,,98,,98,98,98,98,98,98,98,98,98',
|
324
|
+
',98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98,98',
|
325
|
+
'97,97,,97,,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97,97',
|
326
|
+
'97,97,97,97,97,97,97,97,97,97,97,97,97,97,148,148,,148,,148,148,148',
|
327
|
+
'148,148,148,148,148,148,,148,148,148,148,148,148,148,148,148,148,148',
|
328
|
+
'148,148,148,148,148,148,148,148,148,148,148,148,93,93,,93,,93,93,93',
|
329
|
+
'93,93,93,93,93,93,,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93,93',
|
330
|
+
'93,93,93,93,93,93,3,3,,3,,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3',
|
331
|
+
'3,3,3,3,3,3,3,3,3,3,3,3,6,6,,6,,6,6,6,6,6,6,6,6,6,,6,6,6,6,6,6,6,6,6',
|
332
|
+
'6,6,6,6,6,6,6,6,6,6,6,6,6,6,90,90,,90,,90,90,90,90,90,90,90,90,90,90',
|
333
|
+
'90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90,90',
|
334
|
+
'7,7,,7,,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7,7',
|
335
|
+
'7,7,7,53,53,,53,,53,53,53,53,53,53,53,53,53,,53,53,53,53,53,53,53,53',
|
336
|
+
'53,53,53,53,53,53,53,53,53,53,53,53,53,53,53,45,45,,45,,45,45,45,45',
|
337
|
+
'45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45',
|
338
|
+
'45,45,45,45,45,45,48,48,,48,,48,48,48,48,48,48,48,48,48,48,48,48,48',
|
339
|
+
'48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,47,47,,47',
|
340
|
+
',47,47,47,47,47,47,47,47,47,,47,47,47,47,47,47,47,47,47,47,47,47,47',
|
341
|
+
'47,47,47,47,47,47,47,47,47,47,51,51,,51,,51,51,51,51,51,51,51,51,51',
|
342
|
+
',51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51,51',
|
343
|
+
'107,106,95,91,108,107,106,95,91,108,92,,,,,92' ]
|
344
|
+
racc_action_check = arr = ::Array.new(2607, nil)
|
341
345
|
idx = 0
|
342
346
|
clist.each do |str|
|
343
347
|
str.split(',', -1).each do |i|
|
@@ -347,232 +351,235 @@ clist = [
|
|
347
351
|
end
|
348
352
|
|
349
353
|
racc_action_pointer = [
|
350
|
-
-2,
|
351
|
-
|
354
|
+
-2, 41, 38, 2246, 154, -2, 2284, 2360, nil, nil,
|
355
|
+
310, 349, 388, nil, nil, nil, nil, nil, nil, nil,
|
352
356
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
353
357
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
354
|
-
nil, nil, nil, 5,
|
355
|
-
|
358
|
+
nil, nil, nil, nil, 5, 2436, 88, 2512, 2474, 116,
|
359
|
+
nil, 2550, 49, 2398, 1752, nil, nil, 817, 856, 895,
|
356
360
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
357
361
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
358
|
-
nil, nil, nil, nil, nil, nil, nil, nil,
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
|
362
|
+
nil, nil, nil, nil, nil, nil, nil, nil, nil, 934,
|
363
|
+
2322, 2592, 2599, 2208, 1129, 2591, nil, 2132, 2094, 2056,
|
364
|
+
75, 1980, 1942, nil, 1904, 1866, 2590, 2589, 2593, nil,
|
365
|
+
nil, 1636, 1675, 1714, 1597, 1558, 1519, 1480, 1441, 1402,
|
366
|
+
1363, 1324, 1285, 1246, 1207, 1168, 1090, 1051, 1012, 973,
|
367
|
+
778, 739, 700, 661, 622, 583, 544, 505, 466, 427,
|
368
|
+
271, 232, 193, 115, 76, 37, nil, nil, 2170, 77,
|
369
|
+
nil, 2018, 1828, nil, nil, nil, nil, nil, nil, nil,
|
366
370
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
367
371
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
368
372
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
369
|
-
|
373
|
+
nil, 1790 ]
|
370
374
|
|
371
375
|
racc_action_default = [
|
372
|
-
-2, -
|
373
|
-
-2, -
|
376
|
+
-2, -139, -1, -3, -2, -7, -13, -14, -15, -17,
|
377
|
+
-2, -52, -2, -21, -22, -23, -24, -25, -26, -27,
|
374
378
|
-28, -29, -30, -31, -32, -33, -34, -35, -36, -37,
|
375
379
|
-38, -39, -40, -41, -42, -43, -44, -45, -46, -47,
|
376
|
-
-48, -49, -50, -
|
377
|
-
-9, -
|
380
|
+
-48, -49, -50, -51, -139, -5, -8, -139, -139, -6,
|
381
|
+
-16, -9, -57, -63, -64, -65, -67, -52, -52, -2,
|
378
382
|
-71, -72, -73, -74, -75, -76, -77, -78, -79, -80,
|
379
383
|
-81, -82, -83, -84, -85, -86, -87, -88, -89, -90,
|
380
|
-
-91, -92, -93, -94, -95, -96, -97, -98,
|
381
|
-
-
|
382
|
-
-
|
383
|
-
-
|
384
|
-
-
|
385
|
-
-
|
386
|
-
-
|
387
|
-
-
|
388
|
-
-
|
389
|
-
-
|
390
|
-
-
|
391
|
-
-
|
384
|
+
-91, -92, -93, -94, -95, -96, -97, -98, -99, -101,
|
385
|
+
-11, -139, -139, -53, -52, -139, 192, -4, -10, -12,
|
386
|
+
-58, -139, -139, -66, -59, -61, -139, -139, -139, -100,
|
387
|
+
-102, -101, -101, -101, -101, -101, -101, -101, -101, -101,
|
388
|
+
-101, -101, -101, -101, -101, -101, -101, -101, -101, -101,
|
389
|
+
-101, -101, -101, -101, -101, -101, -101, -101, -101, -101,
|
390
|
+
-101, -101, -101, -101, -101, -101, -18, -19, -55, -56,
|
391
|
+
-20, -60, -62, -68, -69, -70, -103, -104, -105, -106,
|
392
|
+
-107, -108, -109, -110, -111, -112, -113, -114, -115, -116,
|
393
|
+
-117, -118, -119, -120, -121, -122, -123, -124, -125, -127,
|
394
|
+
-128, -129, -130, -131, -132, -133, -134, -135, -136, -137,
|
395
|
+
-138, -54 ]
|
392
396
|
|
393
397
|
racc_goto_table = [
|
394
|
-
|
395
|
-
nil,
|
396
|
-
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
398
|
+
46, 1, 51, 100, 2, 92, 90, nil, 49, nil,
|
399
|
+
nil, nil, nil, nil, 91, nil, 95, nil, nil, nil,
|
397
400
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
398
|
-
96, nil, 97, 98, nil, nil, 99, nil, 103, 104,
|
399
|
-
nil, 99, 105, 106, nil, nil, nil, 99, nil, 107,
|
400
401
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
402
|
+
nil, nil, nil, 98, 97, 100, nil, 99, nil, 104,
|
403
|
+
100, 106, 107, 105, nil, nil, 100, nil, nil, nil,
|
404
|
+
nil, nil, nil, 108, nil, nil, nil, nil, nil, nil,
|
401
405
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
402
|
-
nil, nil, nil,
|
403
|
-
nil, nil, nil,
|
404
|
-
nil,
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
nil, nil, nil,
|
406
|
+
nil, nil, 109, nil, nil, nil, nil, 46, 149, nil,
|
407
|
+
nil, nil, nil, nil, 46, nil, 46, 151, nil, nil,
|
408
|
+
nil, 152, 46, 100, 156, 157, 158, 159, 160, 161,
|
409
|
+
162, 163, 164, 165, 166, 167, 168, 169, 170, 171,
|
410
|
+
172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
|
411
|
+
182, 183, 184, 185, 186, 187, 188, 189, 190, nil,
|
412
|
+
nil, nil, nil, 100, 191, nil, nil, nil, nil, 46 ]
|
409
413
|
|
410
414
|
racc_goto_check = [
|
411
|
-
4,
|
412
|
-
nil,
|
415
|
+
4, 1, 5, 9, 2, 8, 3, nil, 2, nil,
|
416
|
+
nil, nil, nil, nil, 2, nil, 2, nil, nil, nil,
|
413
417
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
414
418
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
415
|
-
|
416
|
-
|
419
|
+
nil, nil, nil, 5, 3, 9, nil, 3, nil, 5,
|
420
|
+
9, 8, 8, 3, nil, nil, 9, nil, nil, nil,
|
421
|
+
nil, nil, nil, 2, nil, nil, nil, nil, nil, nil,
|
417
422
|
nil, nil, nil, nil, nil, nil, nil, nil, nil, nil,
|
418
|
-
nil, nil,
|
419
|
-
nil, nil, nil,
|
420
|
-
nil,
|
421
|
-
nil, 4, nil, nil, 9, 12, 12, 12, 12, 12,
|
422
|
-
12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
|
423
|
+
nil, nil, 12, nil, nil, nil, nil, 4, 8, nil,
|
424
|
+
nil, nil, nil, nil, 4, nil, 4, 5, nil, nil,
|
425
|
+
nil, 3, 4, 9, 12, 12, 12, 12, 12, 12,
|
423
426
|
12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
|
424
427
|
12, 12, 12, 12, 12, 12, 12, 12, 12, 12,
|
425
|
-
|
428
|
+
12, 12, 12, 12, 12, 12, 12, 12, 12, nil,
|
429
|
+
nil, nil, nil, 9, 5, nil, nil, nil, nil, 4 ]
|
426
430
|
|
427
431
|
racc_goto_pointer = [
|
428
|
-
nil,
|
429
|
-
nil, nil, -
|
432
|
+
nil, 1, 4, -1, -3, -4, nil, nil, -6, -48,
|
433
|
+
nil, nil, -7 ]
|
430
434
|
|
431
435
|
racc_goto_default = [
|
432
|
-
nil, nil, nil, 3, 5,
|
433
|
-
|
436
|
+
nil, nil, nil, 3, 5, 93, 8, 9, nil, 52,
|
437
|
+
55, 56, nil ]
|
434
438
|
|
435
439
|
racc_reduce_table = [
|
436
440
|
0, 0, :racc_error,
|
437
|
-
1,
|
438
|
-
0,
|
439
|
-
1,
|
440
|
-
3,
|
441
|
-
2,
|
442
|
-
2,
|
443
|
-
1,
|
444
|
-
2,
|
445
|
-
2,
|
446
|
-
3,
|
447
|
-
2,
|
448
|
-
3,
|
449
|
-
1,
|
450
|
-
1,
|
451
|
-
1,
|
452
|
-
2,
|
453
|
-
1,
|
454
|
-
3,
|
455
|
-
3,
|
456
|
-
3,
|
457
|
-
1,
|
458
|
-
1,
|
459
|
-
1,
|
460
|
-
1,
|
461
|
-
1,
|
462
|
-
1,
|
463
|
-
1,
|
464
|
-
1,
|
465
|
-
1,
|
466
|
-
1,
|
467
|
-
1,
|
468
|
-
1,
|
469
|
-
1,
|
470
|
-
1,
|
471
|
-
1,
|
472
|
-
1,
|
473
|
-
1,
|
474
|
-
1,
|
475
|
-
1,
|
476
|
-
1,
|
477
|
-
1,
|
478
|
-
1,
|
479
|
-
1,
|
480
|
-
1,
|
481
|
-
1,
|
482
|
-
1,
|
483
|
-
1,
|
484
|
-
1,
|
485
|
-
1,
|
486
|
-
1,
|
487
|
-
|
488
|
-
|
489
|
-
|
490
|
-
|
491
|
-
2,
|
492
|
-
|
493
|
-
|
494
|
-
2,
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
1,
|
500
|
-
1,
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
3,
|
505
|
-
3,
|
506
|
-
|
507
|
-
1,
|
508
|
-
1,
|
509
|
-
1,
|
510
|
-
1,
|
511
|
-
1,
|
512
|
-
1,
|
513
|
-
1,
|
514
|
-
1,
|
515
|
-
1,
|
516
|
-
1,
|
517
|
-
1,
|
518
|
-
1,
|
519
|
-
1,
|
520
|
-
1,
|
521
|
-
1,
|
522
|
-
1,
|
523
|
-
1,
|
524
|
-
1,
|
525
|
-
1,
|
526
|
-
1,
|
527
|
-
1,
|
528
|
-
1,
|
529
|
-
1,
|
530
|
-
1,
|
531
|
-
1,
|
532
|
-
1,
|
533
|
-
1,
|
534
|
-
1,
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
|
539
|
-
2,
|
540
|
-
2,
|
541
|
-
2,
|
542
|
-
2,
|
543
|
-
2,
|
544
|
-
2,
|
545
|
-
2,
|
546
|
-
2,
|
547
|
-
2,
|
548
|
-
2,
|
549
|
-
2,
|
550
|
-
2,
|
551
|
-
2,
|
552
|
-
2,
|
553
|
-
2,
|
554
|
-
2,
|
555
|
-
2,
|
556
|
-
2,
|
557
|
-
2,
|
558
|
-
2,
|
559
|
-
2,
|
560
|
-
2,
|
561
|
-
2,
|
562
|
-
2,
|
563
|
-
2,
|
564
|
-
2,
|
565
|
-
2,
|
566
|
-
2,
|
567
|
-
2,
|
568
|
-
2,
|
569
|
-
2,
|
570
|
-
2,
|
571
|
-
2,
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
441
|
+
1, 42, :_reduce_none,
|
442
|
+
0, 43, :_reduce_2,
|
443
|
+
1, 43, :_reduce_3,
|
444
|
+
3, 43, :_reduce_4,
|
445
|
+
2, 43, :_reduce_5,
|
446
|
+
2, 43, :_reduce_6,
|
447
|
+
1, 44, :_reduce_7,
|
448
|
+
2, 44, :_reduce_8,
|
449
|
+
2, 44, :_reduce_9,
|
450
|
+
3, 44, :_reduce_10,
|
451
|
+
2, 44, :_reduce_11,
|
452
|
+
3, 44, :_reduce_12,
|
453
|
+
1, 44, :_reduce_13,
|
454
|
+
1, 44, :_reduce_14,
|
455
|
+
1, 45, :_reduce_15,
|
456
|
+
2, 45, :_reduce_16,
|
457
|
+
1, 47, :_reduce_17,
|
458
|
+
3, 47, :_reduce_18,
|
459
|
+
3, 47, :_reduce_19,
|
460
|
+
3, 47, :_reduce_20,
|
461
|
+
1, 48, :_reduce_21,
|
462
|
+
1, 48, :_reduce_22,
|
463
|
+
1, 48, :_reduce_23,
|
464
|
+
1, 48, :_reduce_24,
|
465
|
+
1, 48, :_reduce_25,
|
466
|
+
1, 48, :_reduce_26,
|
467
|
+
1, 48, :_reduce_27,
|
468
|
+
1, 48, :_reduce_28,
|
469
|
+
1, 48, :_reduce_29,
|
470
|
+
1, 48, :_reduce_30,
|
471
|
+
1, 48, :_reduce_31,
|
472
|
+
1, 48, :_reduce_32,
|
473
|
+
1, 48, :_reduce_33,
|
474
|
+
1, 48, :_reduce_34,
|
475
|
+
1, 48, :_reduce_35,
|
476
|
+
1, 48, :_reduce_36,
|
477
|
+
1, 48, :_reduce_37,
|
478
|
+
1, 48, :_reduce_38,
|
479
|
+
1, 48, :_reduce_39,
|
480
|
+
1, 48, :_reduce_40,
|
481
|
+
1, 48, :_reduce_41,
|
482
|
+
1, 48, :_reduce_42,
|
483
|
+
1, 48, :_reduce_43,
|
484
|
+
1, 48, :_reduce_44,
|
485
|
+
1, 48, :_reduce_45,
|
486
|
+
1, 48, :_reduce_46,
|
487
|
+
1, 48, :_reduce_47,
|
488
|
+
1, 48, :_reduce_48,
|
489
|
+
1, 48, :_reduce_49,
|
490
|
+
1, 48, :_reduce_50,
|
491
|
+
1, 48, :_reduce_51,
|
492
|
+
0, 49, :_reduce_52,
|
493
|
+
1, 49, :_reduce_53,
|
494
|
+
3, 49, :_reduce_54,
|
495
|
+
2, 49, :_reduce_55,
|
496
|
+
2, 49, :_reduce_56,
|
497
|
+
1, 46, :_reduce_57,
|
498
|
+
2, 46, :_reduce_58,
|
499
|
+
2, 46, :_reduce_59,
|
500
|
+
3, 46, :_reduce_60,
|
501
|
+
2, 46, :_reduce_61,
|
502
|
+
3, 46, :_reduce_62,
|
503
|
+
1, 46, :_reduce_63,
|
504
|
+
1, 46, :_reduce_64,
|
505
|
+
1, 50, :_reduce_65,
|
506
|
+
2, 50, :_reduce_66,
|
507
|
+
1, 51, :_reduce_67,
|
508
|
+
3, 51, :_reduce_68,
|
509
|
+
3, 51, :_reduce_69,
|
510
|
+
3, 51, :_reduce_70,
|
511
|
+
1, 52, :_reduce_71,
|
512
|
+
1, 52, :_reduce_72,
|
513
|
+
1, 52, :_reduce_73,
|
514
|
+
1, 52, :_reduce_74,
|
515
|
+
1, 52, :_reduce_75,
|
516
|
+
1, 52, :_reduce_76,
|
517
|
+
1, 52, :_reduce_77,
|
518
|
+
1, 52, :_reduce_78,
|
519
|
+
1, 52, :_reduce_79,
|
520
|
+
1, 52, :_reduce_80,
|
521
|
+
1, 52, :_reduce_81,
|
522
|
+
1, 52, :_reduce_82,
|
523
|
+
1, 52, :_reduce_83,
|
524
|
+
1, 52, :_reduce_84,
|
525
|
+
1, 52, :_reduce_85,
|
526
|
+
1, 52, :_reduce_86,
|
527
|
+
1, 52, :_reduce_87,
|
528
|
+
1, 52, :_reduce_88,
|
529
|
+
1, 52, :_reduce_89,
|
530
|
+
1, 52, :_reduce_90,
|
531
|
+
1, 52, :_reduce_91,
|
532
|
+
1, 52, :_reduce_92,
|
533
|
+
1, 52, :_reduce_93,
|
534
|
+
1, 52, :_reduce_94,
|
535
|
+
1, 52, :_reduce_95,
|
536
|
+
1, 52, :_reduce_96,
|
537
|
+
1, 52, :_reduce_97,
|
538
|
+
1, 52, :_reduce_98,
|
539
|
+
1, 52, :_reduce_99,
|
540
|
+
2, 52, :_reduce_100,
|
541
|
+
0, 53, :_reduce_none,
|
542
|
+
1, 53, :_reduce_none,
|
543
|
+
2, 53, :_reduce_none,
|
544
|
+
2, 53, :_reduce_none,
|
545
|
+
2, 53, :_reduce_none,
|
546
|
+
2, 53, :_reduce_none,
|
547
|
+
2, 53, :_reduce_none,
|
548
|
+
2, 53, :_reduce_none,
|
549
|
+
2, 53, :_reduce_none,
|
550
|
+
2, 53, :_reduce_none,
|
551
|
+
2, 53, :_reduce_none,
|
552
|
+
2, 53, :_reduce_none,
|
553
|
+
2, 53, :_reduce_none,
|
554
|
+
2, 53, :_reduce_none,
|
555
|
+
2, 53, :_reduce_none,
|
556
|
+
2, 53, :_reduce_none,
|
557
|
+
2, 53, :_reduce_none,
|
558
|
+
2, 53, :_reduce_none,
|
559
|
+
2, 53, :_reduce_none,
|
560
|
+
2, 53, :_reduce_none,
|
561
|
+
2, 53, :_reduce_none,
|
562
|
+
2, 53, :_reduce_none,
|
563
|
+
2, 53, :_reduce_none,
|
564
|
+
2, 53, :_reduce_none,
|
565
|
+
2, 53, :_reduce_none,
|
566
|
+
2, 53, :_reduce_none,
|
567
|
+
2, 53, :_reduce_none,
|
568
|
+
2, 53, :_reduce_none,
|
569
|
+
2, 53, :_reduce_none,
|
570
|
+
2, 53, :_reduce_none,
|
571
|
+
2, 53, :_reduce_none,
|
572
|
+
2, 53, :_reduce_none,
|
573
|
+
2, 53, :_reduce_none,
|
574
|
+
2, 53, :_reduce_none,
|
575
|
+
2, 53, :_reduce_none,
|
576
|
+
2, 53, :_reduce_none,
|
577
|
+
2, 53, :_reduce_none,
|
578
|
+
2, 53, :_reduce_none ]
|
579
|
+
|
580
|
+
racc_reduce_n = 139
|
581
|
+
|
582
|
+
racc_shift_n = 192
|
576
583
|
|
577
584
|
racc_token_table = {
|
578
585
|
false => 0,
|
@@ -592,31 +599,32 @@ racc_token_table = {
|
|
592
599
|
:LEX_NAMED_REFER => 14,
|
593
600
|
:LEX_NAMED_GENERATE => 15,
|
594
601
|
:LEX_CONTROL_LETTER => 16,
|
595
|
-
:
|
596
|
-
:
|
597
|
-
:
|
598
|
-
:
|
599
|
-
:
|
600
|
-
:
|
601
|
-
:
|
602
|
-
:
|
603
|
-
:
|
604
|
-
:
|
605
|
-
:
|
606
|
-
:
|
607
|
-
:
|
608
|
-
:
|
609
|
-
:
|
610
|
-
:
|
611
|
-
:
|
612
|
-
:
|
613
|
-
:
|
614
|
-
:
|
615
|
-
:
|
616
|
-
:
|
617
|
-
:
|
618
|
-
|
619
|
-
|
602
|
+
:LEX_META_CONTROL_LETTER => 17,
|
603
|
+
:LEX_META_LETTER => 18,
|
604
|
+
:LEX_ESCAPED_LETTER => 19,
|
605
|
+
:LEX_UNICODE => 20,
|
606
|
+
:LEX_SIMPLIFIED_CLASS => 21,
|
607
|
+
:LEX_UNICODE_CLASS => 22,
|
608
|
+
:LEX_BRACKET => 23,
|
609
|
+
:LEX_ANC_LINE_BEGIN => 24,
|
610
|
+
:LEX_ANC_LINE_END => 25,
|
611
|
+
:LEX_ANC_WORD_BOUND => 26,
|
612
|
+
:LEX_ANC_WORD_UNBOUND => 27,
|
613
|
+
:LEX_ANC_STRING_BEGIN => 28,
|
614
|
+
:LEX_ANC_STRING_END => 29,
|
615
|
+
:LEX_ANC_STRING_END2 => 30,
|
616
|
+
:LEX_ANC_LOOK_BEHIND2 => 31,
|
617
|
+
:LEX_ANC_MATCH_START => 32,
|
618
|
+
:LEX_SPECIAL_LETTER => 33,
|
619
|
+
:LEX_MINUS => 34,
|
620
|
+
:LEX_AND_AND => 35,
|
621
|
+
:LEX_SPACE => 36,
|
622
|
+
:LEX_SIMPLE_ESCAPE => 37,
|
623
|
+
:LEX_SHARP => 38,
|
624
|
+
:LEX_NEW_LINE => 39,
|
625
|
+
:LEX_ANY_LETTER => 40 }
|
626
|
+
|
627
|
+
racc_nt_base = 41
|
620
628
|
|
621
629
|
racc_use_result_var = false
|
622
630
|
|
@@ -654,6 +662,7 @@ Racc_token_to_s_table = [
|
|
654
662
|
"LEX_NAMED_REFER",
|
655
663
|
"LEX_NAMED_GENERATE",
|
656
664
|
"LEX_CONTROL_LETTER",
|
665
|
+
"LEX_META_CONTROL_LETTER",
|
657
666
|
"LEX_META_LETTER",
|
658
667
|
"LEX_ESCAPED_LETTER",
|
659
668
|
"LEX_UNICODE",
|
@@ -857,127 +866,127 @@ module_eval(<<'.,.,', 'parser.y', 63)
|
|
857
866
|
|
858
867
|
module_eval(<<'.,.,', 'parser.y', 64)
|
859
868
|
def _reduce_28(val, _values)
|
860
|
-
TLetter.new(:
|
869
|
+
TLetter.new(:LEX_META_CONTROL_LETTER, val[0])
|
861
870
|
end
|
862
871
|
.,.,
|
863
872
|
|
864
873
|
module_eval(<<'.,.,', 'parser.y', 65)
|
865
874
|
def _reduce_29(val, _values)
|
866
|
-
TLetter.new(:
|
875
|
+
TLetter.new(:LEX_CONTROL_LETTER, val[0])
|
867
876
|
end
|
868
877
|
.,.,
|
869
878
|
|
870
879
|
module_eval(<<'.,.,', 'parser.y', 66)
|
871
880
|
def _reduce_30(val, _values)
|
872
|
-
TLetter.new(:
|
881
|
+
TLetter.new(:LEX_ESCAPED_LETTER, val[0])
|
873
882
|
end
|
874
883
|
.,.,
|
875
884
|
|
876
885
|
module_eval(<<'.,.,', 'parser.y', 67)
|
877
886
|
def _reduce_31(val, _values)
|
878
|
-
TLetter.new(:
|
887
|
+
TLetter.new(:LEX_UNICODE, val[0])
|
879
888
|
end
|
880
889
|
.,.,
|
881
890
|
|
882
891
|
module_eval(<<'.,.,', 'parser.y', 68)
|
883
892
|
def _reduce_32(val, _values)
|
884
|
-
TLetter.new(:
|
893
|
+
TLetter.new(:LEX_SIMPLIFIED_CLASS, val[0])
|
885
894
|
end
|
886
895
|
.,.,
|
887
896
|
|
888
897
|
module_eval(<<'.,.,', 'parser.y', 69)
|
889
898
|
def _reduce_33(val, _values)
|
890
|
-
|
899
|
+
TLetter.new(:LEX_UNICODE_CLASS, val[0])
|
891
900
|
end
|
892
901
|
.,.,
|
893
902
|
|
894
903
|
module_eval(<<'.,.,', 'parser.y', 70)
|
895
904
|
def _reduce_34(val, _values)
|
896
|
-
|
905
|
+
@bracket_parser.parse(val[0], @options)
|
897
906
|
end
|
898
907
|
.,.,
|
899
908
|
|
900
909
|
module_eval(<<'.,.,', 'parser.y', 71)
|
901
910
|
def _reduce_35(val, _values)
|
902
|
-
Anchor.new(:
|
911
|
+
Anchor.new(:LEX_ANC_LINE_BEGIN, val[0])
|
903
912
|
end
|
904
913
|
.,.,
|
905
914
|
|
906
915
|
module_eval(<<'.,.,', 'parser.y', 72)
|
907
916
|
def _reduce_36(val, _values)
|
908
|
-
Anchor.new(:
|
917
|
+
Anchor.new(:LEX_ANC_LINE_END, val[0])
|
909
918
|
end
|
910
919
|
.,.,
|
911
920
|
|
912
921
|
module_eval(<<'.,.,', 'parser.y', 73)
|
913
922
|
def _reduce_37(val, _values)
|
914
|
-
Anchor.new(:
|
923
|
+
Anchor.new(:LEX_ANC_WORD_BOUND, val[0])
|
915
924
|
end
|
916
925
|
.,.,
|
917
926
|
|
918
927
|
module_eval(<<'.,.,', 'parser.y', 74)
|
919
928
|
def _reduce_38(val, _values)
|
920
|
-
Anchor.new(:
|
929
|
+
Anchor.new(:LEX_ANC_WORD_UNBOUND, val[0])
|
921
930
|
end
|
922
931
|
.,.,
|
923
932
|
|
924
933
|
module_eval(<<'.,.,', 'parser.y', 75)
|
925
934
|
def _reduce_39(val, _values)
|
926
|
-
Anchor.new(:
|
935
|
+
Anchor.new(:LEX_ANC_STRING_BEGIN, val[0])
|
927
936
|
end
|
928
937
|
.,.,
|
929
938
|
|
930
939
|
module_eval(<<'.,.,', 'parser.y', 76)
|
931
940
|
def _reduce_40(val, _values)
|
932
|
-
Anchor.new(:
|
941
|
+
Anchor.new(:LEX_ANC_STRING_END, val[0])
|
933
942
|
end
|
934
943
|
.,.,
|
935
944
|
|
936
945
|
module_eval(<<'.,.,', 'parser.y', 77)
|
937
946
|
def _reduce_41(val, _values)
|
938
|
-
Anchor.new(:
|
947
|
+
Anchor.new(:LEX_ANC_STRING_END2, val[0])
|
939
948
|
end
|
940
949
|
.,.,
|
941
950
|
|
942
951
|
module_eval(<<'.,.,', 'parser.y', 78)
|
943
952
|
def _reduce_42(val, _values)
|
944
|
-
Anchor.new(:
|
953
|
+
Anchor.new(:LEX_ANC_LOOK_BEHIND2, val[0])
|
945
954
|
end
|
946
955
|
.,.,
|
947
956
|
|
948
957
|
module_eval(<<'.,.,', 'parser.y', 79)
|
949
958
|
def _reduce_43(val, _values)
|
950
|
-
|
959
|
+
Anchor.new(:LEX_ANC_MATCH_START, val[0])
|
951
960
|
end
|
952
961
|
.,.,
|
953
962
|
|
954
963
|
module_eval(<<'.,.,', 'parser.y', 80)
|
955
964
|
def _reduce_44(val, _values)
|
956
|
-
|
965
|
+
SpecialLetter.new(val[0])
|
957
966
|
end
|
958
967
|
.,.,
|
959
968
|
|
960
969
|
module_eval(<<'.,.,', 'parser.y', 81)
|
961
970
|
def _reduce_45(val, _values)
|
962
|
-
TLetter.new(:
|
971
|
+
TLetter.new(:LEX_CHAR, val[0])
|
963
972
|
end
|
964
973
|
.,.,
|
965
974
|
|
966
975
|
module_eval(<<'.,.,', 'parser.y', 82)
|
967
976
|
def _reduce_46(val, _values)
|
968
|
-
TLetter.new(:
|
977
|
+
TLetter.new(:LEX_AND_AND, val[0])
|
969
978
|
end
|
970
979
|
.,.,
|
971
980
|
|
972
981
|
module_eval(<<'.,.,', 'parser.y', 83)
|
973
982
|
def _reduce_47(val, _values)
|
974
|
-
TLetter.new(:
|
983
|
+
TLetter.new(:LEX_SPACE, val[0])
|
975
984
|
end
|
976
985
|
.,.,
|
977
986
|
|
978
987
|
module_eval(<<'.,.,', 'parser.y', 84)
|
979
988
|
def _reduce_48(val, _values)
|
980
|
-
TLetter.new(:
|
989
|
+
TLetter.new(:LEX_SIMPLE_ESCAPE, val[0])
|
981
990
|
end
|
982
991
|
.,.,
|
983
992
|
|
@@ -989,163 +998,163 @@ module_eval(<<'.,.,', 'parser.y', 85)
|
|
989
998
|
|
990
999
|
module_eval(<<'.,.,', 'parser.y', 86)
|
991
1000
|
def _reduce_50(val, _values)
|
992
|
-
TLetter.new(:
|
1001
|
+
TLetter.new(:LEX_CHAR, val[0])
|
993
1002
|
end
|
994
1003
|
.,.,
|
995
1004
|
|
996
|
-
module_eval(<<'.,.,', 'parser.y',
|
1005
|
+
module_eval(<<'.,.,', 'parser.y', 87)
|
997
1006
|
def _reduce_51(val, _values)
|
998
|
-
|
1007
|
+
TLetter.new(:LEX_ANY_LETTER, val[0])
|
999
1008
|
end
|
1000
1009
|
.,.,
|
1001
1010
|
|
1002
|
-
module_eval(<<'.,.,', 'parser.y',
|
1011
|
+
module_eval(<<'.,.,', 'parser.y', 92)
|
1003
1012
|
def _reduce_52(val, _values)
|
1004
|
-
|
1013
|
+
TEmpty.new
|
1005
1014
|
end
|
1006
1015
|
.,.,
|
1007
1016
|
|
1008
|
-
module_eval(<<'.,.,', 'parser.y',
|
1017
|
+
module_eval(<<'.,.,', 'parser.y', 94)
|
1009
1018
|
def _reduce_53(val, _values)
|
1010
|
-
|
1019
|
+
Selectable.new(val[0])
|
1011
1020
|
end
|
1012
1021
|
.,.,
|
1013
1022
|
|
1014
|
-
module_eval(<<'.,.,', 'parser.y',
|
1023
|
+
module_eval(<<'.,.,', 'parser.y', 96)
|
1015
1024
|
def _reduce_54(val, _values)
|
1016
|
-
val[0].add(
|
1025
|
+
val[0].add(val[2])
|
1017
1026
|
end
|
1018
1027
|
.,.,
|
1019
1028
|
|
1020
|
-
module_eval(<<'.,.,', 'parser.y',
|
1029
|
+
module_eval(<<'.,.,', 'parser.y', 98)
|
1021
1030
|
def _reduce_55(val, _values)
|
1022
|
-
|
1031
|
+
val[0].add(TEmpty.new)
|
1023
1032
|
end
|
1024
1033
|
.,.,
|
1025
1034
|
|
1026
|
-
module_eval(<<'.,.,', 'parser.y',
|
1035
|
+
module_eval(<<'.,.,', 'parser.y', 100)
|
1027
1036
|
def _reduce_56(val, _values)
|
1028
|
-
|
1037
|
+
Selectable.new(TEmpty.new).add(val[1])
|
1029
1038
|
end
|
1030
1039
|
.,.,
|
1031
1040
|
|
1032
|
-
module_eval(<<'.,.,', 'parser.y',
|
1041
|
+
module_eval(<<'.,.,', 'parser.y', 104)
|
1033
1042
|
def _reduce_57(val, _values)
|
1034
|
-
|
1043
|
+
Sequence.new(val[0])
|
1035
1044
|
end
|
1036
1045
|
.,.,
|
1037
1046
|
|
1038
|
-
module_eval(<<'.,.,', 'parser.y',
|
1047
|
+
module_eval(<<'.,.,', 'parser.y', 106)
|
1039
1048
|
def _reduce_58(val, _values)
|
1040
|
-
|
1049
|
+
val[0].add(val[1])
|
1041
1050
|
end
|
1042
1051
|
.,.,
|
1043
1052
|
|
1044
|
-
module_eval(<<'.,.,', 'parser.y',
|
1053
|
+
module_eval(<<'.,.,', 'parser.y', 108)
|
1045
1054
|
def _reduce_59(val, _values)
|
1046
|
-
|
1055
|
+
Sequence.new(Paren.new(val[0])).concatinate(val[1])
|
1047
1056
|
end
|
1048
1057
|
.,.,
|
1049
1058
|
|
1050
|
-
module_eval(<<'.,.,', 'parser.y',
|
1059
|
+
module_eval(<<'.,.,', 'parser.y', 110)
|
1051
1060
|
def _reduce_60(val, _values)
|
1052
|
-
|
1061
|
+
val[0].add(Paren.new(val[1])).concatinate(val[2])
|
1053
1062
|
end
|
1054
1063
|
.,.,
|
1055
1064
|
|
1056
|
-
module_eval(<<'.,.,', 'parser.y',
|
1065
|
+
module_eval(<<'.,.,', 'parser.y', 112)
|
1057
1066
|
def _reduce_61(val, _values)
|
1058
|
-
|
1067
|
+
Sequence.new(Paren.new(val[0])).concatinate(val[1])
|
1059
1068
|
end
|
1060
1069
|
.,.,
|
1061
1070
|
|
1062
|
-
module_eval(<<'.,.,', 'parser.y',
|
1071
|
+
module_eval(<<'.,.,', 'parser.y', 114)
|
1063
1072
|
def _reduce_62(val, _values)
|
1064
|
-
|
1073
|
+
val[0].add(Paren.new(val[1])).concatinate(val[2])
|
1065
1074
|
end
|
1066
1075
|
.,.,
|
1067
1076
|
|
1068
|
-
module_eval(<<'.,.,', 'parser.y',
|
1077
|
+
module_eval(<<'.,.,', 'parser.y', 116)
|
1069
1078
|
def _reduce_63(val, _values)
|
1070
1079
|
Sequence.new(Paren.new(val[0]))
|
1071
1080
|
end
|
1072
1081
|
.,.,
|
1073
1082
|
|
1074
|
-
module_eval(<<'.,.,', 'parser.y',
|
1083
|
+
module_eval(<<'.,.,', 'parser.y', 118)
|
1075
1084
|
def _reduce_64(val, _values)
|
1076
|
-
|
1085
|
+
Sequence.new(Paren.new(val[0]))
|
1077
1086
|
end
|
1078
1087
|
.,.,
|
1079
1088
|
|
1080
|
-
module_eval(<<'.,.,', 'parser.y',
|
1089
|
+
module_eval(<<'.,.,', 'parser.y', 122)
|
1081
1090
|
def _reduce_65(val, _values)
|
1082
|
-
|
1091
|
+
Repeatable.new(val[0])
|
1083
1092
|
end
|
1084
1093
|
.,.,
|
1085
1094
|
|
1086
|
-
module_eval(<<'.,.,', 'parser.y',
|
1095
|
+
module_eval(<<'.,.,', 'parser.y', 124)
|
1087
1096
|
def _reduce_66(val, _values)
|
1088
|
-
val[0]
|
1097
|
+
val[0].set_quant(val[1])
|
1089
1098
|
end
|
1090
1099
|
.,.,
|
1091
1100
|
|
1092
|
-
module_eval(<<'.,.,', 'parser.y',
|
1101
|
+
module_eval(<<'.,.,', 'parser.y', 128)
|
1093
1102
|
def _reduce_67(val, _values)
|
1094
|
-
|
1103
|
+
val[0]
|
1095
1104
|
end
|
1096
1105
|
.,.,
|
1097
1106
|
|
1098
|
-
module_eval(<<'.,.,', 'parser.y',
|
1107
|
+
module_eval(<<'.,.,', 'parser.y', 130)
|
1099
1108
|
def _reduce_68(val, _values)
|
1100
1109
|
@options[:parens].add(Paren.new(val[0], val[1], val[2]))
|
1101
1110
|
end
|
1102
1111
|
.,.,
|
1103
1112
|
|
1104
|
-
module_eval(<<'.,.,', 'parser.y',
|
1113
|
+
module_eval(<<'.,.,', 'parser.y', 132)
|
1105
1114
|
def _reduce_69(val, _values)
|
1106
1115
|
@options[:parens].add(Paren.new(val[0], val[1], val[2]))
|
1107
1116
|
end
|
1108
1117
|
.,.,
|
1109
1118
|
|
1110
|
-
module_eval(<<'.,.,', 'parser.y',
|
1119
|
+
module_eval(<<'.,.,', 'parser.y', 134)
|
1111
1120
|
def _reduce_70(val, _values)
|
1112
|
-
|
1121
|
+
@options[:parens].add(Paren.new(val[0], val[1], val[2]))
|
1113
1122
|
end
|
1114
1123
|
.,.,
|
1115
1124
|
|
1116
1125
|
module_eval(<<'.,.,', 'parser.y', 137)
|
1117
1126
|
def _reduce_71(val, _values)
|
1118
|
-
TLetter.new(:
|
1127
|
+
TLetter.new(:LEX_CHAR, val[0])
|
1119
1128
|
end
|
1120
1129
|
.,.,
|
1121
1130
|
|
1122
1131
|
module_eval(<<'.,.,', 'parser.y', 138)
|
1123
1132
|
def _reduce_72(val, _values)
|
1124
|
-
|
1133
|
+
TLetter.new(:LEX_OCTET, val[0])
|
1125
1134
|
end
|
1126
1135
|
.,.,
|
1127
1136
|
|
1128
1137
|
module_eval(<<'.,.,', 'parser.y', 139)
|
1129
1138
|
def _reduce_73(val, _values)
|
1130
|
-
|
1139
|
+
BackRefer.new(:LEX_BACK_REFER, val[0])
|
1131
1140
|
end
|
1132
1141
|
.,.,
|
1133
1142
|
|
1134
1143
|
module_eval(<<'.,.,', 'parser.y', 140)
|
1135
1144
|
def _reduce_74(val, _values)
|
1136
|
-
|
1145
|
+
TLetter.new(:LEX_CODE_LITERAL, val[0])
|
1137
1146
|
end
|
1138
1147
|
.,.,
|
1139
1148
|
|
1140
1149
|
module_eval(<<'.,.,', 'parser.y', 141)
|
1141
1150
|
def _reduce_75(val, _values)
|
1142
|
-
BackRefer.new(:
|
1151
|
+
BackRefer.new(:LEX_NAMED_REFER, val[0])
|
1143
1152
|
end
|
1144
1153
|
.,.,
|
1145
1154
|
|
1146
1155
|
module_eval(<<'.,.,', 'parser.y', 142)
|
1147
1156
|
def _reduce_76(val, _values)
|
1148
|
-
|
1157
|
+
BackRefer.new(:LEX_NAMED_GENERATE, val[0])
|
1149
1158
|
end
|
1150
1159
|
.,.,
|
1151
1160
|
|
@@ -1157,109 +1166,109 @@ module_eval(<<'.,.,', 'parser.y', 143)
|
|
1157
1166
|
|
1158
1167
|
module_eval(<<'.,.,', 'parser.y', 144)
|
1159
1168
|
def _reduce_78(val, _values)
|
1160
|
-
TLetter.new(:
|
1169
|
+
TLetter.new(:LEX_CONTROL_LETTER, val[0])
|
1161
1170
|
end
|
1162
1171
|
.,.,
|
1163
1172
|
|
1164
1173
|
module_eval(<<'.,.,', 'parser.y', 145)
|
1165
1174
|
def _reduce_79(val, _values)
|
1166
|
-
TLetter.new(:
|
1175
|
+
TLetter.new(:LEX_ESCAPED_LETTER, val[0])
|
1167
1176
|
end
|
1168
1177
|
.,.,
|
1169
1178
|
|
1170
1179
|
module_eval(<<'.,.,', 'parser.y', 146)
|
1171
1180
|
def _reduce_80(val, _values)
|
1172
|
-
TLetter.new(:
|
1181
|
+
TLetter.new(:LEX_UNICODE, val[0])
|
1173
1182
|
end
|
1174
1183
|
.,.,
|
1175
1184
|
|
1176
1185
|
module_eval(<<'.,.,', 'parser.y', 147)
|
1177
1186
|
def _reduce_81(val, _values)
|
1178
|
-
TLetter.new(:
|
1187
|
+
TLetter.new(:LEX_SIMPLIFIED_CLASS, val[0])
|
1179
1188
|
end
|
1180
1189
|
.,.,
|
1181
1190
|
|
1182
1191
|
module_eval(<<'.,.,', 'parser.y', 148)
|
1183
1192
|
def _reduce_82(val, _values)
|
1184
|
-
|
1193
|
+
TLetter.new(:LEX_UNICODE_CLASS, val[0])
|
1185
1194
|
end
|
1186
1195
|
.,.,
|
1187
1196
|
|
1188
1197
|
module_eval(<<'.,.,', 'parser.y', 149)
|
1189
1198
|
def _reduce_83(val, _values)
|
1190
|
-
|
1199
|
+
@bracket_parser.parse(val[0], @options)
|
1191
1200
|
end
|
1192
1201
|
.,.,
|
1193
1202
|
|
1194
1203
|
module_eval(<<'.,.,', 'parser.y', 150)
|
1195
1204
|
def _reduce_84(val, _values)
|
1196
|
-
Anchor.new(:
|
1205
|
+
Anchor.new(:LEX_ANC_LINE_BEGIN, val[0])
|
1197
1206
|
end
|
1198
1207
|
.,.,
|
1199
1208
|
|
1200
1209
|
module_eval(<<'.,.,', 'parser.y', 151)
|
1201
1210
|
def _reduce_85(val, _values)
|
1202
|
-
Anchor.new(:
|
1211
|
+
Anchor.new(:LEX_ANC_LINE_END, val[0])
|
1203
1212
|
end
|
1204
1213
|
.,.,
|
1205
1214
|
|
1206
1215
|
module_eval(<<'.,.,', 'parser.y', 152)
|
1207
1216
|
def _reduce_86(val, _values)
|
1208
|
-
Anchor.new(:
|
1217
|
+
Anchor.new(:LEX_ANC_WORD_BOUND, val[0])
|
1209
1218
|
end
|
1210
1219
|
.,.,
|
1211
1220
|
|
1212
1221
|
module_eval(<<'.,.,', 'parser.y', 153)
|
1213
1222
|
def _reduce_87(val, _values)
|
1214
|
-
Anchor.new(:
|
1223
|
+
Anchor.new(:LEX_ANC_WORD_UNBOUND, val[0])
|
1215
1224
|
end
|
1216
1225
|
.,.,
|
1217
1226
|
|
1218
1227
|
module_eval(<<'.,.,', 'parser.y', 154)
|
1219
1228
|
def _reduce_88(val, _values)
|
1220
|
-
Anchor.new(:
|
1229
|
+
Anchor.new(:LEX_ANC_STRING_BEGIN, val[0])
|
1221
1230
|
end
|
1222
1231
|
.,.,
|
1223
1232
|
|
1224
1233
|
module_eval(<<'.,.,', 'parser.y', 155)
|
1225
1234
|
def _reduce_89(val, _values)
|
1226
|
-
Anchor.new(:
|
1235
|
+
Anchor.new(:LEX_ANC_STRING_END, val[0])
|
1227
1236
|
end
|
1228
1237
|
.,.,
|
1229
1238
|
|
1230
1239
|
module_eval(<<'.,.,', 'parser.y', 156)
|
1231
1240
|
def _reduce_90(val, _values)
|
1232
|
-
Anchor.new(:
|
1241
|
+
Anchor.new(:LEX_ANC_STRING_END2, val[0])
|
1233
1242
|
end
|
1234
1243
|
.,.,
|
1235
1244
|
|
1236
1245
|
module_eval(<<'.,.,', 'parser.y', 157)
|
1237
1246
|
def _reduce_91(val, _values)
|
1238
|
-
Anchor.new(:
|
1247
|
+
Anchor.new(:LEX_ANC_LOOK_BEHIND2, val[0])
|
1239
1248
|
end
|
1240
1249
|
.,.,
|
1241
1250
|
|
1242
1251
|
module_eval(<<'.,.,', 'parser.y', 158)
|
1243
1252
|
def _reduce_92(val, _values)
|
1244
|
-
|
1253
|
+
Anchor.new(:LEX_ANC_MATCH_START, val[0])
|
1245
1254
|
end
|
1246
1255
|
.,.,
|
1247
1256
|
|
1248
1257
|
module_eval(<<'.,.,', 'parser.y', 159)
|
1249
1258
|
def _reduce_93(val, _values)
|
1250
|
-
|
1259
|
+
SpecialLetter.new(val[0])
|
1251
1260
|
end
|
1252
1261
|
.,.,
|
1253
1262
|
|
1254
1263
|
module_eval(<<'.,.,', 'parser.y', 160)
|
1255
1264
|
def _reduce_94(val, _values)
|
1256
|
-
TLetter.new(:
|
1265
|
+
TLetter.new(:LEX_CHAR, val[0])
|
1257
1266
|
end
|
1258
1267
|
.,.,
|
1259
1268
|
|
1260
1269
|
module_eval(<<'.,.,', 'parser.y', 161)
|
1261
1270
|
def _reduce_95(val, _values)
|
1262
|
-
|
1271
|
+
TLetter.new(:LEX_AND_AND, val[0])
|
1263
1272
|
end
|
1264
1273
|
.,.,
|
1265
1274
|
|
@@ -1271,23 +1280,27 @@ module_eval(<<'.,.,', 'parser.y', 162)
|
|
1271
1280
|
|
1272
1281
|
module_eval(<<'.,.,', 'parser.y', 163)
|
1273
1282
|
def _reduce_97(val, _values)
|
1274
|
-
|
1283
|
+
TEmpty.new
|
1275
1284
|
end
|
1276
1285
|
.,.,
|
1277
1286
|
|
1278
1287
|
module_eval(<<'.,.,', 'parser.y', 164)
|
1279
1288
|
def _reduce_98(val, _values)
|
1280
|
-
TLetter.new(:
|
1289
|
+
TLetter.new(:LEX_SIMPLE_ESCAPE, val[0])
|
1281
1290
|
end
|
1282
1291
|
.,.,
|
1283
1292
|
|
1284
1293
|
module_eval(<<'.,.,', 'parser.y', 165)
|
1285
1294
|
def _reduce_99(val, _values)
|
1286
|
-
|
1295
|
+
TLetter.new(:LEX_ANY_LETTER, val[0])
|
1287
1296
|
end
|
1288
1297
|
.,.,
|
1289
1298
|
|
1290
|
-
|
1299
|
+
module_eval(<<'.,.,', 'parser.y', 166)
|
1300
|
+
def _reduce_100(val, _values)
|
1301
|
+
TEmpty.new
|
1302
|
+
end
|
1303
|
+
.,.,
|
1291
1304
|
|
1292
1305
|
# reduce 101 omitted
|
1293
1306
|
|
@@ -1359,6 +1372,12 @@ module_eval(<<'.,.,', 'parser.y', 165)
|
|
1359
1372
|
|
1360
1373
|
# reduce 135 omitted
|
1361
1374
|
|
1375
|
+
# reduce 136 omitted
|
1376
|
+
|
1377
|
+
# reduce 137 omitted
|
1378
|
+
|
1379
|
+
# reduce 138 omitted
|
1380
|
+
|
1362
1381
|
def _reduce_none(val, _values)
|
1363
1382
|
val[0]
|
1364
1383
|
end
|