ruby_parser 3.7.3 → 3.8.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.
@@ -19,7 +19,12 @@ token kCLASS kMODULE kDEF kUNDEF kBEGIN kRESCUE kENSURE kEND kIF kUNLESS
19
19
  tWORDS_BEG tQWORDS_BEG tSTRING_DBEG tSTRING_DVAR tSTRING_END
20
20
  tSTRING tSYMBOL tNL tEH tCOLON tCOMMA tSPACE tSEMI tLAMBDA
21
21
  tLAMBEG tDSTAR tCHAR tSYMBOLS_BEG tQSYMBOLS_BEG tSTRING_DEND tUBANG
22
+ #if defined(RUBY21) || defined(RUBY22) || defined(RUBY23))
22
23
  tRATIONAL tIMAGINARY
24
+ #endif
25
+ #if defined(RUBY22 || defined(RUBY23))
26
+ tLABEL_END
27
+ #endif
23
28
 
24
29
  prechigh
25
30
  right tBANG tTILDE tUPLUS
@@ -205,7 +210,9 @@ rule
205
210
  {
206
211
  result = self.node_assign val[0], s(:svalue, val[2])
207
212
  }
213
+ #if defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
208
214
  | mlhs tEQL mrhs_arg
215
+ #endif
209
216
  {
210
217
  result = new_masgn val[0], val[2]
211
218
  }
@@ -679,7 +686,9 @@ rule
679
686
  {
680
687
  result = new_call val[0], :**, argl(val[2])
681
688
  }
689
+ #if defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
682
690
  | tUMINUS_NUM simple_numeric tPOW arg
691
+ #endif
683
692
  {
684
693
  result = new_call(new_call(s(:lit, val[1]), :"**", argl(val[3])), :"-@")
685
694
  }
@@ -892,6 +901,7 @@ rule
892
901
  result = self.list_append val[0], s(:splat, val[3])
893
902
  }
894
903
 
904
+ #if defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
895
905
  mrhs_arg: mrhs
896
906
  {
897
907
  result = new_masgn_arg val[0]
@@ -901,6 +911,7 @@ rule
901
911
  result = new_masgn_arg val[0], :wrap
902
912
  }
903
913
 
914
+ #endif
904
915
  mrhs: args tCOMMA arg_value
905
916
  {
906
917
  result = val[0] << val[2]
@@ -1850,7 +1861,9 @@ regexp_contents: none
1850
1861
  }
1851
1862
  compstmt tRCURLY
1852
1863
  {
1864
+ #if defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
1853
1865
  # TODO: tRCURLY -> tSTRING_END
1866
+ #endif
1854
1867
  _, memo, stmt, _ = val
1855
1868
 
1856
1869
  lex_strterm, brace_nest, string_nest, oldcond, oldcmdarg, oldlex_state = memo
@@ -1916,17 +1929,21 @@ regexp_contents: none
1916
1929
  end
1917
1930
  }
1918
1931
 
1932
+ #if defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
1919
1933
  numeric: simple_numeric
1920
1934
  | tUMINUS_NUM simple_numeric
1935
+ #endif
1921
1936
  {
1922
1937
  result = -val[1] # TODO: pt_testcase
1923
1938
  }
1924
1939
 
1940
+ #if defined(RUBY21) || defined(RUBY22) || defined(RUBY23))
1925
1941
  simple_numeric: tINTEGER
1926
1942
  | tFLOAT
1927
1943
  | tRATIONAL
1928
1944
  | tIMAGINARY
1929
1945
 
1946
+ #endif
1930
1947
  user_variable: tIDENTIFIER
1931
1948
  | tIVAR
1932
1949
  | tGVAR
@@ -2119,11 +2136,21 @@ keyword_variable: kNIL { result = s(:nil) }
2119
2136
  result = identifier
2120
2137
  }
2121
2138
 
2139
+ #if defined(RUBY22) || defined(RUBY23))
2140
+ f_arg_asgn: f_norm_arg
2141
+
2142
+ f_arg_item: f_arg_asgn
2143
+ | tLPAREN f_margs rparen
2144
+ {
2145
+ result = val[1]
2146
+ }
2147
+ #else
2122
2148
  f_arg_item: f_norm_arg
2123
2149
  | tLPAREN f_margs rparen
2124
2150
  {
2125
2151
  result = val[1]
2126
2152
  }
2153
+ #endif
2127
2154
 
2128
2155
  f_arg: f_arg_item
2129
2156
  {
@@ -19,39 +19,39 @@ require "ruby_parser_extras"
19
19
  ##### State transition tables begin ###
20
20
 
21
21
  clist = [
22
- '-605,584,610,584,3,217,218,-605,-605,-605,753,270,220,-605,-605,569',
23
- '-605,-510,-99,-106,855,241,665,-101,-510,-605,572,270,665,822,-103,584',
24
- '-102,584,270,610,-605,-605,615,-605,-605,-605,-605,-605,-100,744,217',
22
+ '-607,584,610,584,3,217,218,-607,-607,-607,753,270,220,-607,-607,569',
23
+ '-607,-510,-99,-106,855,241,665,-101,-510,-607,572,270,665,822,-103,584',
24
+ '-102,584,270,610,-607,-607,615,-607,-607,-607,-607,-607,-100,744,217',
25
25
  '218,221,745,705,-94,-92,238,-100,584,664,240,239,580,579,221,664,612',
26
- '611,623,665,-605,-605,-605,-605,-605,-605,-605,-605,-605,-605,-605,-605',
27
- '-605,-605,733,-104,-605,-605,-605,-105,649,217,218,270,-605,-416,573',
28
- '-605,221,612,611,269,-605,664,-605,-101,-605,-605,-605,-605,-605,-605',
29
- '-605,-601,-605,-605,-605,269,116,752,116,-94,-92,115,269,115,-90,-97',
30
- '-288,-605,-605,845,-93,-98,-605,-288,-288,-288,116,221,-101,-288,-288',
31
- '115,-288,-101,-102,-103,116,-102,116,-602,-103,115,-102,115,-94,-92',
26
+ '611,623,665,-607,-607,-607,-607,-607,-607,-607,-607,-607,-607,-607,-607',
27
+ '-607,-607,733,-104,-607,-607,-607,-105,649,217,218,270,-607,-416,573',
28
+ '-607,221,612,611,269,-607,664,-607,-101,-607,-607,-607,-607,-607,-607',
29
+ '-607,-603,-607,-607,-607,269,116,752,116,-94,-92,115,269,115,-90,-97',
30
+ '-288,-607,-607,845,-93,-98,-607,-288,-288,-288,116,221,-101,-288,-288',
31
+ '115,-288,-101,-102,-103,116,-102,116,-604,-103,115,-102,115,-94,-92',
32
32
  '704,-94,-92,-100,-91,733,-288,-288,-100,-288,-288,-288,-288,-288,116',
33
33
  '-94,-92,935,221,115,-102,-103,269,221,733,629,116,83,883,-425,610,115',
34
34
  '-95,665,822,84,-96,-288,-288,-288,-288,-288,-288,-288,-288,-288,-288',
35
35
  '-288,-288,-288,-288,626,-92,-288,-288,-288,-84,648,822,531,590,-288',
36
36
  '94,95,-288,94,95,664,241,-288,-70,-288,694,-288,-288,-288,-288,-288',
37
- '-288,-288,-89,-288,-425,-288,-100,272,-601,610,628,-425,-605,612,611',
37
+ '-288,-288,-89,-288,-425,-288,-100,272,-603,610,628,-425,-607,612,611',
38
38
  '608,272,-502,-288,-288,-425,-95,788,-288,-502,-502,-502,116,221,-502',
39
39
  '-502,-502,115,-502,680,-104,625,-105,-425,851,822,-502,787,-502,-502',
40
- '-502,116,-93,-94,543,-599,115,545,-502,-502,694,-502,-502,-502,-502',
41
- '-502,-511,569,96,97,-605,96,97,-511,116,612,611,-605,572,115,-517,-516',
42
- '-601,-103,765,458,-605,-605,-517,-502,-502,-502,-502,-502,-502,-502',
43
- '-502,-502,-502,-502,-502,-502,-502,-101,-605,-502,-502,-502,-505,-502',
44
- '-502,580,579,-502,610,-505,-502,-502,221,-502,-599,-502,-90,-502,-505',
40
+ '-502,116,-93,-94,543,-601,115,545,-502,-502,694,-502,-502,-502,-502',
41
+ '-502,-511,569,96,97,-607,96,97,-511,116,612,611,-607,572,115,-517,-516',
42
+ '-603,-103,765,458,-607,-607,-517,-502,-502,-502,-502,-502,-502,-502',
43
+ '-502,-502,-502,-502,-502,-502,-502,-101,-607,-502,-502,-502,-505,-502',
44
+ '-502,580,579,-502,610,-505,-502,-502,221,-502,-601,-502,-90,-502,-505',
45
45
  '-502,-502,-502,-502,-502,-502,-502,-502,-502,506,-502,-99,-98,504,-502',
46
- '-605,-106,-599,531,-99,573,260,-605,-502,-502,-502,-502,-601,-502,-505',
47
- '-502,-605,610,217,218,-264,-505,-505,-505,-513,-502,-505,-505,-505,792',
48
- '-505,-513,-280,221,-605,612,611,491,-505,-280,-505,-505,-505,543,763',
49
- '-96,542,-598,-280,543,-505,-505,545,-505,-505,-505,-505,-505,564,-105',
46
+ '-607,-106,-601,531,-99,573,260,-607,-502,-502,-502,-502,-603,-502,-505',
47
+ '-502,-607,610,217,218,-264,-505,-505,-505,-513,-502,-505,-505,-505,792',
48
+ '-505,-513,-280,221,-607,612,611,491,-505,-280,-505,-505,-505,543,763',
49
+ '-96,542,-600,-280,543,-505,-505,545,-505,-505,-505,-505,-505,564,-105',
50
50
  '561,560,559,882,562,491,564,610,561,560,559,959,562,561,560,559,610',
51
51
  '562,612,611,618,-505,-505,-505,-505,-505,-505,-505,-505,-505,-505,-505',
52
52
  '-505,-505,-505,774,-505,-505,-505,-505,-502,-505,-505,-505,-263,-505',
53
- '768,-502,-505,-505,767,-505,-598,-505,643,-505,-502,-505,-505,-505,-505',
54
- '-505,-505,-505,766,-505,-507,-505,612,611,630,610,543,-507,-598,545',
53
+ '768,-502,-505,-505,767,-505,-600,-505,643,-505,-502,-505,-505,-505,-505',
54
+ '-505,-505,-505,766,-505,-507,-505,612,611,630,610,543,-507,-600,545',
55
55
  '847,612,611,613,-505,-505,-505,-505,981,-505,-288,-505,-516,773,580',
56
56
  '579,736,-288,-288,-288,-94,-505,-288,-288,-288,564,-288,561,560,559',
57
57
  '569,562,533,-508,-103,-509,-288,-288,-288,534,-508,572,-509,217,218',
@@ -61,20 +61,20 @@ clist = [
61
61
  '263,-288,-288,-288,-289,790,-288,264,729,-288,727,-289,-288,-288,-97',
62
62
  '-288,573,-288,726,-288,-289,-288,-288,-288,-288,-288,-288,-288,-106',
63
63
  '-288,885,-288,564,-512,561,560,559,569,562,221,-512,-92,1005,710,-288',
64
- '-288,-288,-288,572,-288,-605,-288,217,218,888,-101,891,-605,-605,-605',
65
- '893,-104,-605,-605,-605,564,-605,561,560,559,567,562,851,822,895,-605',
66
- '-605,-605,-605,577,576,580,579,116,221,897,-605,-605,115,-605,-605,-605',
67
- '-605,-605,116,898,725,717,564,115,561,560,559,719,562,564,715,561,560',
68
- '559,713,562,722,694,711,573,906,-605,-605,-605,-605,-605,-605,-605,-605',
69
- '-605,-605,-605,-605,-605,-605,710,241,-605,-605,-605,719,789,-605,-262',
70
- '910,-605,912,719,-605,-605,913,-605,221,-605,710,-605,722,-605,-605',
71
- '-605,-605,-605,-605,-605,241,-605,-605,-605,238,916,592,116,240,239',
72
- '236,237,115,593,918,116,-605,-605,-605,-605,115,-605,591,-605,748,295',
64
+ '-288,-288,-288,572,-288,-607,-288,217,218,888,-101,891,-607,-607,-607',
65
+ '893,-104,-607,-607,-607,564,-607,561,560,559,567,562,851,822,895,-607',
66
+ '-607,-607,-607,577,576,580,579,116,221,897,-607,-607,115,-607,-607,-607',
67
+ '-607,-607,116,898,725,717,564,115,561,560,559,719,562,564,715,561,560',
68
+ '559,713,562,722,694,711,573,906,-607,-607,-607,-607,-607,-607,-607,-607',
69
+ '-607,-607,-607,-607,-607,-607,710,241,-607,-607,-607,719,789,-607,-262',
70
+ '910,-607,912,719,-607,-607,913,-607,221,-607,710,-607,722,-607,-607',
71
+ '-607,-607,-607,-607,-607,241,-607,-607,-607,238,916,592,116,240,239',
72
+ '236,237,115,593,918,116,-607,-607,-607,-607,115,-607,591,-607,748,295',
73
73
  '72,73,74,12,60,747,238,-102,66,67,240,239,920,70,749,68,69,71,33,34',
74
74
  '75,76,119,120,121,122,123,32,31,30,104,103,105,106,874,875,22,922,876',
75
75
  '110,111,653,11,48,922,13,108,107,109,98,59,100,99,101,221,102,110,111',
76
76
  '707,94,95,928,45,46,44,241,245,250,251,252,247,249,257,258,253,254,-288',
77
- '234,235,748,116,255,256,-288,43,115,962,36,-602,221,61,62,-288,116,63',
77
+ '234,235,748,116,255,256,-288,43,115,962,36,-604,221,61,62,-288,116,63',
78
78
  '749,38,238,115,244,47,240,239,236,237,248,246,242,23,243,930,700,213',
79
79
  '91,83,85,86,87,89,214,932,699,84,92,694,259,536,-239,212,221,65,683',
80
80
  '-84,81,88,90,221,221,96,97,295,72,73,74,12,60,221,221,523,66,67,241',
@@ -82,7 +82,7 @@ clist = [
82
82
  '103,105,106,241,241,22,652,272,641,640,637,11,48,221,13,108,107,109',
83
83
  '98,59,100,99,101,956,102,110,111,636,94,95,-262,45,46,44,241,245,250',
84
84
  '251,252,247,249,257,258,253,254,-288,234,235,-289,634,255,256,-288,43',
85
- '963,-289,297,-602,964,61,62,-288,627,63,-289,38,238,966,244,47,240,239',
85
+ '963,-289,297,-604,964,61,62,-288,627,63,-289,38,238,966,244,47,240,239',
86
86
  '236,237,248,246,242,23,243,967,624,-515,91,83,85,86,87,89,-515,-335',
87
87
  '621,84,92,617,259,595,-335,-515,594,65,402,590,81,88,90,-335,506,96',
88
88
  '97,295,72,73,74,12,60,547,983,-289,66,67,546,985,986,70,-289,68,69,71',
@@ -94,10 +94,10 @@ clist = [
94
94
  '23,243,-69,1014,1011,91,83,85,86,87,89,1012,-280,922,84,92,922,259,922',
95
95
  '-280,1010,1019,65,506,983,81,88,90,-280,504,96,97,295,72,73,74,12,60',
96
96
  '501,272,454,66,67,491,220,460,70,455,68,69,71,33,34,75,76,459,456,457',
97
- '413,408,32,31,30,104,103,105,106,392,959,22,561,560,559,-602,562,11',
98
- '48,-601,13,108,107,109,98,59,100,99,101,699,102,110,111,389,94,95,386',
97
+ '413,408,32,31,30,104,103,105,106,392,959,22,561,560,559,-604,562,11',
98
+ '48,-603,13,108,107,109,98,59,100,99,101,699,102,110,111,389,94,95,386',
99
99
  '45,46,44,241,245,250,251,252,247,249,257,258,253,254,-288,234,235,-514',
100
- '383,255,256,-288,43,359,-514,36,-602,221,61,62,-288,320,63,-514,38,238',
100
+ '383,255,256,-288,43,359,-514,36,-604,221,61,62,-288,320,63,-514,38,238',
101
101
  '983,244,47,240,239,236,237,248,246,242,23,243,319,1042,1043,91,83,85',
102
102
  '86,87,89,1044,1045,1001,84,92,221,259,1001,1001,221,260,65,216,211,81',
103
103
  '88,90,210,922,96,97,295,72,73,74,12,60,983,209,112,66,67,1001,,,70,',
@@ -177,13 +177,13 @@ clist = [
177
177
  '84,92,240,239,236,237,,,65,,,81,88,90,,,96,97,295,72,73,74,12,60,,,',
178
178
  '66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,104,103,105,106,,,22',
179
179
  ',,,,,11,48,,13,108,107,109,98,59,100,99,101,,102,110,111,,94,95,,45',
180
- '46,44,241,245,250,251,252,247,249,257,258,253,254,,-624,-624,,,255,256',
180
+ '46,44,241,245,250,251,252,247,249,257,258,253,254,,-626,-626,,,255,256',
181
181
  ',43,,,36,,,61,62,,,63,,38,238,,244,47,240,239,236,237,248,246,242,23',
182
182
  '243,,,,91,83,85,86,87,89,,,,84,92,,564,,561,560,559,65,562,,81,88,90',
183
183
  ',,96,97,8,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,719,,',
184
184
  ',,32,31,30,104,103,105,106,,564,22,561,560,559,,562,11,48,10,13,108',
185
- '107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-624,-624',
186
- '-624,-624,247,249,,719,-624,-624,,,,,,255,256,,43,,,36,,,61,62,,,63',
185
+ '107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-626,-626',
186
+ '-626,-626,247,249,,719,-626,-626,,,,,,255,256,,43,,,36,,,61,62,,,63',
187
187
  ',38,238,,244,47,240,239,236,237,248,246,242,23,243,,,,91,83,85,86,87',
188
188
  '89,,,,84,92,,564,,561,560,559,65,562,,81,88,90,,,96,97,295,72,73,74',
189
189
  '12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,719,,,,,32,31,30,104,103',
@@ -202,13 +202,13 @@ clist = [
202
202
  '236,237,248,246,242,23,243,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,',
203
203
  '81,88,90,,,96,97,295,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75',
204
204
  '76,,,,,,32,31,30,104,103,105,106,,,22,,,,,,11,48,,13,108,107,109,98',
205
- '59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-624,-624,-624,-624',
206
- '247,249,,,-624,-624,,,,,,255,256,,43,,,36,,,61,62,,,63,,38,238,,244',
205
+ '59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-626,-626,-626,-626',
206
+ '247,249,,,-626,-626,,,,,,255,256,,43,,,36,,,61,62,,,63,,38,238,,244',
207
207
  '47,240,239,236,237,248,246,242,23,243,,,,91,83,85,86,87,89,,,,84,92',
208
208
  ',,,,,,65,,,81,88,90,,,96,97,295,72,73,74,12,60,,,,66,67,,,,70,,68,69',
209
209
  '71,33,34,75,76,,,,,,32,31,30,104,103,105,106,,,22,,,,,,11,48,,13,108',
210
- '107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-624,-624',
211
- '-624,-624,247,249,,,-624,-624,,,,,,255,256,,43,,,36,,,61,62,,,63,,38',
210
+ '107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-626,-626',
211
+ '-626,-626,247,249,,,-626,-626,,,,,,255,256,,43,,,36,,,61,62,,,63,,38',
212
212
  '238,,244,47,240,239,236,237,248,246,242,23,243,,,,91,83,85,86,87,89',
213
213
  ',,,84,92,,,,,,,65,,,81,88,90,,,96,97,295,72,73,74,12,60,,,,66,67,,,',
214
214
  '70,,68,69,71,33,34,75,76,,,,,,32,31,30,104,103,105,106,,,22,,,,,,11',
@@ -222,23 +222,23 @@ clist = [
222
222
  '248,246,242,23,243,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90',
223
223
  ',,96,97,295,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75,76,,,,',
224
224
  ',32,31,30,104,103,105,106,,,22,,,,,,11,48,,13,108,107,109,98,59,100',
225
- '99,101,,102,110,111,,94,95,,45,46,44,241,-624,-624,-624,-624,247,249',
226
- ',,-624,-624,,,,,,255,256,,43,,,36,,,61,62,,,63,,38,238,,244,47,240,239',
225
+ '99,101,,102,110,111,,94,95,,45,46,44,241,-626,-626,-626,-626,247,249',
226
+ ',,-626,-626,,,,,,255,256,,43,,,36,,,61,62,,,63,,38,238,,244,47,240,239',
227
227
  '236,237,248,246,242,23,243,,,,91,83,85,86,87,89,,,,84,92,,,,,,,65,,',
228
228
  '81,88,90,,,96,97,295,72,73,74,12,60,,,,66,67,,,,70,,68,69,71,33,34,75',
229
229
  '76,,,,,,32,31,30,104,103,105,106,,,22,,,,,,11,48,,13,108,107,109,98',
230
- '59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-624,-624,-624,-624',
231
- '247,249,,,-624,-624,,,,,,255,256,,43,,,36,,,61,62,,,63,,38,238,,244',
230
+ '59,100,99,101,,102,110,111,,94,95,,45,46,44,241,-626,-626,-626,-626',
231
+ '247,249,,,-626,-626,,,,,,255,256,,43,,,36,,,61,62,,,63,,38,238,,244',
232
232
  '47,240,239,236,237,248,246,242,23,243,,,,91,83,85,86,87,89,,,,84,92',
233
233
  ',,,,,,65,,,81,88,90,,,96,97,8,72,73,74,12,60,,,,66,67,,,,70,,68,69,71',
234
234
  '33,34,75,76,,,,,,32,31,30,104,103,105,106,,,22,,,,,,11,48,10,13,108',
235
235
  '107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44,241,245,250,251',
236
- '252,247,249,257,258,253,254,,-624,-624,,,255,256,,43,,,36,,,61,62,,',
236
+ '252,247,249,257,258,253,254,,-626,-626,,,255,256,,43,,,36,,,61,62,,',
237
237
  '63,,38,238,,244,47,240,239,236,237,248,246,242,23,243,,,,91,83,85,86',
238
238
  '87,89,,,,84,92,,,,,,,65,,,81,88,90,,,96,97,72,73,74,,60,,,,66,67,,,',
239
239
  '70,,68,69,71,312,313,75,76,,,,,,308,309,315,104,103,105,106,,,233,,',
240
240
  ',,,,48,,,108,107,109,98,59,100,99,101,,102,110,111,,94,95,,45,46,44',
241
- '241,-624,-624,-624,-624,247,249,,,-624,-624,,,,,,255,256,,226,,,232',
241
+ '241,-626,-626,-626,-626,247,249,,,-626,-626,,,,,,255,256,,226,,,232',
242
242
  ',,61,62,,,63,,,238,,244,47,240,239,236,237,248,246,242,231,243,,,,91',
243
243
  '83,85,86,87,89,,,,84,92,,,,,,,65,,,81,88,90,,,96,97,72,73,74,,60,,,',
244
244
  '66,67,,,,70,,68,69,71,33,34,75,76,,,,,,32,31,30,104,103,105,106,,,22',
@@ -778,18 +778,18 @@ clist = [
778
778
  ',-281,-281,-281,-281,-281,-281,-281,-281,-281,-281,-281,-281,-281,-281',
779
779
  ',,-281,-281,-281,,,-281,,,-281,,,-281,-281,,-281,573,-281,,-281,,-281',
780
780
  '-281,-281,-281,-281,-281,-281,,-281,,-281,,,,,,,,,,,,,-281,-281,-281',
781
- '-281,-606,-281,,-281,,,,-606,-606,-606,,,-606,-606,-606,564,-606,561',
782
- '560,559,569,562,,,,-606,-606,-606,-606,,,572,,,,,-606,-606,,-606,-606',
783
- '-606,-606,-606,,,,,,,,,,567,,,,,,,,,,,580,579,,-606,-606,-606,-606,-606',
784
- '-606,-606,-606,-606,-606,-606,-606,-606,-606,,,-606,-606,-606,,,-606',
785
- ',,-606,,,-606,-606,,-606,573,-606,,-606,,-606,-606,-606,-606,-606,-606',
786
- '-606,,-606,-606,-606,,,,,,,,,,,,,-606,-606,-606,-606,-607,-606,,-606',
787
- ',,,-607,-607,-607,,,-607,-607,-607,564,-607,561,560,559,569,562,,,,-607',
788
- '-607,-607,-607,,,572,,,,,-607,-607,,-607,-607,-607,-607,-607,,,,,,,',
789
- ',,567,,,,,,,,,,,580,579,,-607,-607,-607,-607,-607,-607,-607,-607,-607',
790
- '-607,-607,-607,-607,-607,,,-607,-607,-607,,,-607,,,-607,,,-607,-607',
791
- ',-607,573,-607,,-607,,-607,-607,-607,-607,-607,-607,-607,,-607,-607',
792
- '-607,,,,,,,,,,,,,-607,-607,-607,-607,,-607,,-607,176,187,177,200,173',
781
+ '-281,-608,-281,,-281,,,,-608,-608,-608,,,-608,-608,-608,564,-608,561',
782
+ '560,559,569,562,,,,-608,-608,-608,-608,,,572,,,,,-608,-608,,-608,-608',
783
+ '-608,-608,-608,,,,,,,,,,567,,,,,,,,,,,580,579,,-608,-608,-608,-608,-608',
784
+ '-608,-608,-608,-608,-608,-608,-608,-608,-608,,,-608,-608,-608,,,-608',
785
+ ',,-608,,,-608,-608,,-608,573,-608,,-608,,-608,-608,-608,-608,-608,-608',
786
+ '-608,,-608,-608,-608,,,,,,,,,,,,,-608,-608,-608,-608,-609,-608,,-608',
787
+ ',,,-609,-609,-609,,,-609,-609,-609,564,-609,561,560,559,569,562,,,,-609',
788
+ '-609,-609,-609,,,572,,,,,-609,-609,,-609,-609,-609,-609,-609,,,,,,,',
789
+ ',,567,,,,,,,,,,,580,579,,-609,-609,-609,-609,-609,-609,-609,-609,-609',
790
+ '-609,-609,-609,-609,-609,,,-609,-609,-609,,,-609,,,-609,,,-609,-609',
791
+ ',-609,573,-609,,-609,,-609,-609,-609,-609,-609,-609,-609,,-609,-609',
792
+ '-609,,,,,,,,,,,,,-609,-609,-609,-609,,-609,,-609,176,187,177,200,173',
793
793
  '193,183,182,203,204,198,181,180,175,201,205,206,185,174,188,192,194',
794
794
  '186,179,,,,195,202,197,196,189,199,184,172,191,190,,,,,,171,178,169',
795
795
  '170,166,167,168,127,129,,,128,,,,,,,,,161,162,,157,139,140,141,148,145',
@@ -836,16 +836,16 @@ clist = [
836
836
  ',-295,-295,-295,-295,-295,,,,,,,,,,567,,,,,,,,,577,576,580,579,,-295',
837
837
  '-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,-295,,,-295',
838
838
  '-295,-295,,,-295,,275,-295,,,-295,-295,,-295,573,-295,,-295,,-295,-295',
839
- '-295,-295,-295,-295,-295,,-295,,-295,,,,,,,,,,,,-623,-295,-295,,-295',
840
- ',-295,-623,-623,-623,,,-623,-623,-623,564,-623,561,560,559,569,562,',
841
- ',,-623,-623,,,,,572,,,,,-623,-623,,-623,-623,-623,-623,-623,,,564,,561',
842
- '560,559,569,562,567,,,,,,,,,572,,580,579,,-623,,,,,,,-623,-623,-623',
843
- ',-623,-623,-623,-623,,-623,567,-623,,,,,272,-623,-623,-623,-623,580',
844
- '579,,573,,,,,-623,-623,,-623,-623,-623,-623,-623,,-623,-623,,,,,,,,',
845
- ',,,,-623,,,573,,-623,,,-623,-623,-623,-623,-623,-623,-623,-623,-623',
846
- '-623,-623,-623,-623,-623,,,-623,-623,-623,,,-623,,272,-623,,,-623,-623',
847
- ',-623,,-623,,-623,,-623,-623,-623,-623,-623,-623,-623,,-623,-623,-623',
848
- ',,,,,1037,439,,,1038,,,-623,-623,,-623,,-623,161,162,,157,139,140,141',
839
+ '-295,-295,-295,-295,-295,,-295,,-295,,,,,,,,,,,,-625,-295,-295,,-295',
840
+ ',-295,-625,-625,-625,,,-625,-625,-625,564,-625,561,560,559,569,562,',
841
+ ',,-625,-625,,,,,572,,,,,-625,-625,,-625,-625,-625,-625,-625,,,564,,561',
842
+ '560,559,569,562,567,,,,,,,,,572,,580,579,,-625,,,,,,,-625,-625,-625',
843
+ ',-625,-625,-625,-625,,-625,567,-625,,,,,272,-625,-625,-625,-625,580',
844
+ '579,,573,,,,,-625,-625,,-625,-625,-625,-625,-625,,-625,-625,,,,,,,,',
845
+ ',,,,-625,,,573,,-625,,,-625,-625,-625,-625,-625,-625,-625,-625,-625',
846
+ '-625,-625,-625,-625,-625,,,-625,-625,-625,,,-625,,272,-625,,,-625,-625',
847
+ ',-625,,-625,,-625,,-625,-625,-625,-625,-625,-625,-625,,-625,-625,-625',
848
+ ',,,,,1037,439,,,1038,,,-625,-625,,-625,,-625,161,162,,157,139,140,141',
849
849
  '148,145,147,,,142,143,,,,163,164,149,150,,,,,,272,,,,,,,,154,153,,138',
850
850
  '160,156,155,151,152,146,144,136,159,137,,,165,,,,,1035,432,,,1036,,',
851
851
  ',,,,,,161,162,158,157,139,140,141,148,145,147,,,142,143,,,,163,164,149',
@@ -1963,19 +1963,19 @@ racc_action_pointer = [
1963
1963
  32, nil, 1227, nil ]
1964
1964
 
1965
1965
  racc_action_default = [
1966
- -1, -624, -623, -624, -2, -610, -4, -5, -624, -8,
1967
- -9, -624, -624, -624, -29, -624, -624, -624, -280, -624,
1968
- -40, -43, -612, -624, -48, -50, -51, -52, -57, -257,
1969
- -257, -257, -292, -331, -332, -69, -623, -73, -81, -83,
1970
- -624, -514, -515, -624, -624, -624, -624, -624, -612, -238,
1971
- -271, -272, -273, -274, -275, -276, -277, -278, -279, -600,
1972
- -282, -612, -623, -623, -300, -403, -624, -624, -305, -308,
1973
- -610, -624, -316, -323, -624, -333, -334, -445, -446, -447,
1974
- -448, -449, -450, -623, -453, -623, -623, -623, -623, -623,
1975
- -623, -623, -490, -496, -498, -499, -500, -501, -598, -503,
1976
- -504, -599, -506, -507, -508, -509, -510, -511, -512, -513,
1977
- -518, -519, 1054, -3, -611, -619, -620, -621, -7, -624,
1978
- -624, -624, -624, -624, -624, -17, -624, -112, -113, -114,
1966
+ -1, -626, -625, -626, -2, -612, -4, -5, -626, -8,
1967
+ -9, -626, -626, -626, -29, -626, -626, -626, -280, -626,
1968
+ -40, -43, -614, -626, -48, -50, -51, -52, -57, -257,
1969
+ -257, -257, -292, -331, -332, -69, -625, -73, -81, -83,
1970
+ -626, -514, -515, -626, -626, -626, -626, -626, -614, -238,
1971
+ -271, -272, -273, -274, -275, -276, -277, -278, -279, -602,
1972
+ -282, -614, -625, -625, -300, -403, -626, -626, -305, -308,
1973
+ -612, -626, -316, -323, -626, -333, -334, -445, -446, -447,
1974
+ -448, -449, -450, -625, -453, -625, -625, -625, -625, -625,
1975
+ -625, -625, -490, -496, -498, -499, -500, -501, -600, -503,
1976
+ -504, -601, -506, -507, -508, -509, -510, -511, -512, -513,
1977
+ -518, -519, 1054, -3, -613, -621, -622, -623, -7, -626,
1978
+ -626, -626, -626, -626, -626, -17, -626, -112, -113, -114,
1979
1979
  -115, -116, -117, -118, -119, -120, -124, -125, -126, -127,
1980
1980
  -128, -129, -130, -131, -132, -133, -134, -135, -136, -137,
1981
1981
  -138, -139, -140, -141, -142, -143, -144, -145, -146, -147,
@@ -1983,92 +1983,92 @@ racc_action_default = [
1983
1983
  -158, -159, -160, -161, -162, -163, -164, -165, -166, -167,
1984
1984
  -168, -169, -170, -171, -172, -173, -174, -175, -176, -177,
1985
1985
  -178, -179, -180, -181, -182, -183, -184, -185, -186, -187,
1986
- -188, -189, -190, -191, -192, -193, -194, -22, -121, -623,
1987
- -624, -624, -623, -624, -624, -624, -624, -624, -624, -624,
1988
- -612, -613, -47, -624, -514, -515, -624, -280, -624, -624,
1989
- -230, -624, -623, -624, -624, -624, -624, -624, -624, -624,
1990
- -624, -624, -624, -624, -624, -624, -624, -624, -624, -624,
1991
- -624, -624, -624, -624, -624, -624, -624, -624, -624, -624,
1992
- -409, -412, -624, -608, -609, -58, -624, -299, -624, -426,
1993
- -429, -64, -623, -423, -65, -612, -66, -239, -252, -623,
1994
- -623, -256, -624, -262, -624, -623, -490, -591, -624, -624,
1995
- -67, -68, -610, -13, -14, -624, -71, -623, -612, -624,
1996
- -74, -77, -623, -89, -90, -624, -624, -97, -292, -295,
1997
- -612, -416, -331, -332, -335, -424, -624, -79, -624, -85,
1998
- -289, -497, -624, -215, -216, -231, -624, -623, -285, -284,
1999
- -624, -240, -616, -616, -624, -624, -589, -616, -624, -301,
2000
- -302, -546, -49, -624, -624, -624, -624, -610, -624, -611,
2001
- -514, -515, -624, -624, -280, -624, -356, -357, -624, -319,
2002
- -624, -112, -113, -154, -155, -156, -172, -177, -184, -187,
2003
- -326, -624, -514, -515, -586, -587, -451, -624, -474, -624,
2004
- -476, -624, -478, -624, -624, -458, -624, -624, -464, -624,
2005
- -624, -470, -624, -624, -472, -624, -489, -491, -492, -493,
2006
- -494, -6, -622, -23, -24, -25, -26, -27, -623, -624,
2007
- -19, -20, -21, -122, -624, -30, -39, -267, -624, -624,
2008
- -266, -31, -197, -612, -247, -248, -623, -623, -601, -602,
2009
- -257, -421, -603, -604, -602, -601, -257, -420, -422, -603,
2010
- -604, -37, -205, -38, -624, -41, -42, -195, -262, -44,
2011
- -45, -46, -612, -298, -624, -624, -623, -289, -624, -624,
2012
- -624, -206, -207, -208, -209, -210, -211, -212, -213, -217,
1986
+ -188, -189, -190, -191, -192, -193, -194, -22, -121, -625,
1987
+ -626, -626, -625, -626, -626, -626, -626, -626, -626, -626,
1988
+ -614, -615, -47, -626, -514, -515, -626, -280, -626, -626,
1989
+ -230, -626, -625, -626, -626, -626, -626, -626, -626, -626,
1990
+ -626, -626, -626, -626, -626, -626, -626, -626, -626, -626,
1991
+ -626, -626, -626, -626, -626, -626, -626, -626, -626, -626,
1992
+ -409, -412, -626, -610, -611, -58, -626, -299, -626, -426,
1993
+ -429, -64, -625, -423, -65, -614, -66, -239, -252, -625,
1994
+ -625, -256, -626, -262, -626, -625, -490, -593, -626, -626,
1995
+ -67, -68, -612, -13, -14, -626, -71, -625, -614, -626,
1996
+ -74, -77, -625, -89, -90, -626, -626, -97, -292, -295,
1997
+ -614, -416, -331, -332, -335, -424, -626, -79, -626, -85,
1998
+ -289, -497, -626, -215, -216, -231, -626, -625, -285, -284,
1999
+ -626, -240, -618, -618, -626, -626, -591, -618, -626, -301,
2000
+ -302, -546, -49, -626, -626, -626, -626, -612, -626, -613,
2001
+ -514, -515, -626, -626, -280, -626, -356, -357, -626, -319,
2002
+ -626, -112, -113, -154, -155, -156, -172, -177, -184, -187,
2003
+ -326, -626, -514, -515, -588, -589, -451, -626, -474, -626,
2004
+ -476, -626, -478, -626, -626, -458, -626, -626, -464, -626,
2005
+ -626, -470, -626, -626, -472, -626, -489, -491, -492, -493,
2006
+ -494, -6, -624, -23, -24, -25, -26, -27, -625, -626,
2007
+ -19, -20, -21, -122, -626, -30, -39, -267, -626, -626,
2008
+ -266, -31, -197, -614, -247, -248, -625, -625, -603, -604,
2009
+ -257, -421, -605, -606, -604, -603, -257, -420, -422, -605,
2010
+ -606, -37, -205, -38, -626, -41, -42, -195, -262, -44,
2011
+ -45, -46, -614, -298, -626, -626, -625, -289, -626, -626,
2012
+ -626, -206, -207, -208, -209, -210, -211, -212, -213, -217,
2013
2013
  -218, -219, -220, -221, -222, -223, -224, -225, -226, -227,
2014
- -228, -229, -232, -233, -234, -235, -612, -623, -257, -601,
2015
- -602, -54, -59, -258, -417, -623, -623, -612, -612, -294,
2016
- -253, -624, -261, -254, -624, -259, -624, -263, -624, -596,
2017
- -594, -597, -12, -611, -16, -612, -70, -287, -86, -75,
2018
- -624, -612, -623, -624, -624, -96, -624, -497, -624, -82,
2019
- -87, -624, -624, -624, -624, -236, -624, -437, -624, -612,
2020
- -614, -241, -618, -617, -243, -618, -290, -291, -590, -624,
2021
- -546, -406, -585, -585, -529, -531, -531, -531, -545, -547,
2022
- -548, -549, -550, -551, -552, -553, -554, -624, -556, -558,
2023
- -560, -565, -567, -568, -570, -575, -577, -578, -580, -581,
2024
- -582, -624, -623, -347, -348, -623, -624, -624, -624, -624,
2025
- -432, -623, -624, -624, -289, -313, -107, -108, -624, -110,
2026
- -624, -280, -624, -624, -324, -546, -328, -624, -452, -475,
2027
- -480, -481, -483, -454, -477, -455, -479, -456, -457, -624,
2028
- -460, -462, -624, -463, -466, -467, -624, -468, -469, -624,
2029
- -495, -624, -18, -624, -28, -270, -624, -624, -425, -624,
2030
- -249, -251, -624, -624, -60, -245, -246, -418, -624, -624,
2031
- -62, -419, -624, -624, -297, -601, -602, -601, -602, -612,
2032
- -195, -624, -392, -393, -612, -395, -410, -53, -413, -623,
2033
- -427, -430, -244, -293, -623, -260, -264, -624, -592, -593,
2034
- -624, -15, -72, -624, -78, -84, -612, -601, -602, -623,
2035
- -93, -95, -624, -80, -624, -204, -214, -612, -623, -623,
2036
- -283, -286, -616, -404, -623, -623, -612, -624, -527, -528,
2037
- -624, -624, -538, -624, -541, -624, -543, -624, -358, -624,
2038
- -360, -362, -369, -612, -559, -569, -579, -583, -623, -349,
2039
- -623, -306, -350, -351, -309, -624, -312, -624, -612, -601,
2040
- -602, -605, -288, -624, -107, -108, -109, -624, -624, -623,
2041
- -317, -520, -521, -624, -320, -623, -623, -546, -624, -624,
2042
- -612, -624, -623, -459, -461, -465, -471, -473, -10, -123,
2043
- -268, -624, -198, -624, -615, -623, -33, -200, -34, -201,
2044
- -61, -35, -203, -36, -202, -63, -196, -624, -624, -624,
2045
- -624, -425, -624, -585, -585, -374, -623, -623, -623, -391,
2046
- -624, -612, -397, -554, -562, -563, -573, -623, -415, -414,
2047
- -55, -623, -623, -255, -265, -595, -76, -91, -88, -296,
2048
- -623, -354, -623, -438, -623, -439, -440, -242, -624, -624,
2049
- -612, -585, -566, -584, -530, -531, -531, -557, -531, -531,
2050
- -576, -531, -554, -571, -612, -624, -367, -624, -555, -624,
2051
- -352, -624, -624, -623, -623, -311, -624, -425, -624, -107,
2052
- -108, -111, -612, -623, -624, -523, -624, -624, -624, -612,
2053
- -525, -329, -588, -482, -485, -486, -487, -488, -624, -269,
2054
- -32, -199, -250, -624, -237, -624, -372, -373, -382, -376,
2055
- -384, -624, -387, -624, -389, -394, -624, -624, -624, -561,
2056
- -624, -624, -623, -624, -624, -11, -623, -444, -355, -624,
2057
- -624, -442, -407, -408, -405, -526, -624, -534, -624, -536,
2058
- -624, -539, -624, -542, -544, -359, -361, -365, -624, -370,
2059
- -303, -624, -304, -624, -624, -624, -623, -314, -425, -624,
2060
- -624, -321, -325, -327, -524, -546, -484, -585, -564, -375,
2061
- -623, -623, -623, -623, -574, -623, -396, -612, -399, -401,
2062
- -402, -572, -624, -289, -411, -624, -428, -431, -443, -623,
2063
- -98, -99, -624, -624, -106, -441, -531, -531, -531, -531,
2064
- -363, -624, -368, -624, -623, -307, -310, -264, -623, -623,
2065
- -318, -522, -623, -623, -371, -624, -379, -624, -381, -624,
2066
- -385, -624, -388, -390, -398, -624, -288, -605, -56, -437,
2067
- -623, -624, -624, -105, -624, -532, -535, -537, -540, -624,
2068
- -366, -623, -433, -434, -435, -624, -624, -624, -623, -623,
2069
- -623, -623, -400, -436, -612, -601, -602, -605, -104, -531,
2070
- -364, -353, -315, -322, -330, -624, -377, -380, -383, -386,
2071
- -425, -533, -623, -378 ]
2014
+ -228, -229, -232, -233, -234, -235, -614, -625, -257, -603,
2015
+ -604, -54, -59, -258, -417, -625, -625, -614, -614, -294,
2016
+ -253, -626, -261, -254, -626, -259, -626, -263, -626, -598,
2017
+ -596, -599, -12, -613, -16, -614, -70, -287, -86, -75,
2018
+ -626, -614, -625, -626, -626, -96, -626, -497, -626, -82,
2019
+ -87, -626, -626, -626, -626, -236, -626, -437, -626, -614,
2020
+ -616, -241, -620, -619, -243, -620, -290, -291, -592, -626,
2021
+ -546, -406, -587, -587, -529, -531, -531, -531, -545, -547,
2022
+ -548, -549, -550, -551, -552, -553, -554, -626, -558, -560,
2023
+ -562, -567, -569, -570, -572, -577, -579, -580, -582, -583,
2024
+ -584, -626, -625, -347, -348, -625, -626, -626, -626, -626,
2025
+ -432, -625, -626, -626, -289, -313, -107, -108, -626, -110,
2026
+ -626, -280, -626, -626, -324, -546, -328, -626, -452, -475,
2027
+ -480, -481, -483, -454, -477, -455, -479, -456, -457, -626,
2028
+ -460, -462, -626, -463, -466, -467, -626, -468, -469, -626,
2029
+ -495, -626, -18, -626, -28, -270, -626, -626, -425, -626,
2030
+ -249, -251, -626, -626, -60, -245, -246, -418, -626, -626,
2031
+ -62, -419, -626, -626, -297, -603, -604, -603, -604, -614,
2032
+ -195, -626, -392, -393, -614, -395, -410, -53, -413, -625,
2033
+ -427, -430, -244, -293, -625, -260, -264, -626, -594, -595,
2034
+ -626, -15, -72, -626, -78, -84, -614, -603, -604, -625,
2035
+ -93, -95, -626, -80, -626, -204, -214, -614, -625, -625,
2036
+ -283, -286, -618, -404, -625, -625, -614, -626, -527, -528,
2037
+ -626, -626, -538, -626, -541, -626, -543, -626, -358, -626,
2038
+ -360, -362, -369, -614, -561, -571, -581, -585, -625, -349,
2039
+ -625, -306, -350, -351, -309, -626, -312, -626, -614, -603,
2040
+ -604, -607, -288, -626, -107, -108, -109, -626, -626, -625,
2041
+ -317, -520, -521, -626, -320, -625, -625, -546, -626, -626,
2042
+ -614, -626, -625, -459, -461, -465, -471, -473, -10, -123,
2043
+ -268, -626, -198, -626, -617, -625, -33, -200, -34, -201,
2044
+ -61, -35, -203, -36, -202, -63, -196, -626, -626, -626,
2045
+ -626, -425, -626, -587, -587, -374, -625, -625, -625, -391,
2046
+ -626, -614, -397, -554, -564, -565, -575, -625, -415, -414,
2047
+ -55, -625, -625, -255, -265, -597, -76, -91, -88, -296,
2048
+ -625, -354, -625, -438, -625, -439, -440, -242, -626, -626,
2049
+ -614, -587, -568, -586, -530, -531, -531, -559, -531, -531,
2050
+ -578, -531, -554, -573, -614, -626, -367, -626, -555, -626,
2051
+ -352, -626, -626, -625, -625, -311, -626, -425, -626, -107,
2052
+ -108, -111, -614, -625, -626, -523, -626, -626, -626, -614,
2053
+ -525, -329, -590, -482, -485, -486, -487, -488, -626, -269,
2054
+ -32, -199, -250, -626, -237, -626, -372, -373, -382, -376,
2055
+ -384, -626, -387, -626, -389, -394, -626, -626, -626, -563,
2056
+ -626, -626, -625, -626, -626, -11, -625, -444, -355, -626,
2057
+ -626, -442, -407, -408, -405, -526, -626, -534, -626, -536,
2058
+ -626, -539, -626, -542, -544, -359, -361, -365, -626, -370,
2059
+ -303, -626, -304, -626, -626, -626, -625, -314, -425, -626,
2060
+ -626, -321, -325, -327, -524, -546, -484, -587, -566, -375,
2061
+ -625, -625, -625, -625, -576, -625, -396, -614, -399, -401,
2062
+ -402, -574, -626, -289, -411, -626, -428, -431, -443, -625,
2063
+ -98, -99, -626, -626, -106, -441, -531, -531, -531, -531,
2064
+ -363, -626, -368, -626, -625, -307, -310, -264, -625, -625,
2065
+ -318, -522, -625, -625, -371, -626, -379, -626, -381, -626,
2066
+ -385, -626, -388, -390, -398, -626, -288, -607, -56, -437,
2067
+ -625, -626, -626, -105, -626, -532, -535, -537, -540, -626,
2068
+ -366, -625, -433, -434, -435, -626, -626, -626, -625, -625,
2069
+ -625, -625, -400, -436, -614, -603, -604, -607, -104, -531,
2070
+ -364, -353, -315, -322, -330, -626, -377, -380, -383, -386,
2071
+ -425, -533, -625, -378 ]
2072
2072
 
2073
2073
  clist = [
2074
2074
  '6,219,278,278,278,423,430,436,446,370,117,261,589,130,130,558,273,314',
@@ -2869,48 +2869,50 @@ racc_reduce_table = [
2869
2869
  1, 331, :_reduce_none,
2870
2870
  1, 332, :_reduce_none,
2871
2871
  3, 332, :_reduce_555,
2872
- 1, 285, :_reduce_556,
2873
- 3, 285, :_reduce_557,
2872
+ 1, 332, :_reduce_none,
2873
+ 3, 332, :_reduce_557,
2874
+ 1, 285, :_reduce_558,
2875
+ 3, 285, :_reduce_559,
2874
2876
  1, 333, :_reduce_none,
2875
- 2, 334, :_reduce_559,
2876
- 1, 334, :_reduce_560,
2877
- 2, 335, :_reduce_561,
2878
- 1, 335, :_reduce_562,
2877
+ 2, 334, :_reduce_561,
2878
+ 1, 334, :_reduce_562,
2879
+ 2, 335, :_reduce_563,
2880
+ 1, 335, :_reduce_564,
2879
2881
  1, 279, :_reduce_none,
2880
- 3, 279, :_reduce_564,
2882
+ 3, 279, :_reduce_566,
2881
2883
  1, 328, :_reduce_none,
2882
- 3, 328, :_reduce_566,
2884
+ 3, 328, :_reduce_568,
2883
2885
  1, 336, :_reduce_none,
2884
2886
  1, 336, :_reduce_none,
2885
- 2, 280, :_reduce_569,
2886
- 1, 280, :_reduce_570,
2887
- 3, 337, :_reduce_571,
2888
- 3, 338, :_reduce_572,
2889
- 1, 286, :_reduce_573,
2890
- 3, 286, :_reduce_574,
2891
- 1, 330, :_reduce_575,
2892
- 3, 330, :_reduce_576,
2887
+ 2, 280, :_reduce_571,
2888
+ 1, 280, :_reduce_572,
2889
+ 3, 337, :_reduce_573,
2890
+ 3, 338, :_reduce_574,
2891
+ 1, 286, :_reduce_575,
2892
+ 3, 286, :_reduce_576,
2893
+ 1, 330, :_reduce_577,
2894
+ 3, 330, :_reduce_578,
2893
2895
  1, 339, :_reduce_none,
2894
2896
  1, 339, :_reduce_none,
2895
- 2, 287, :_reduce_579,
2896
- 1, 287, :_reduce_580,
2897
+ 2, 287, :_reduce_581,
2898
+ 1, 287, :_reduce_582,
2897
2899
  1, 340, :_reduce_none,
2898
2900
  1, 340, :_reduce_none,
2899
- 2, 282, :_reduce_583,
2900
- 2, 281, :_reduce_584,
2901
- 0, 281, :_reduce_585,
2901
+ 2, 282, :_reduce_585,
2902
+ 2, 281, :_reduce_586,
2903
+ 0, 281, :_reduce_587,
2902
2904
  1, 244, :_reduce_none,
2903
- 0, 341, :_reduce_587,
2904
- 4, 244, :_reduce_588,
2905
- 1, 232, :_reduce_589,
2906
- 2, 232, :_reduce_590,
2905
+ 0, 341, :_reduce_589,
2906
+ 4, 244, :_reduce_590,
2907
+ 1, 232, :_reduce_591,
2908
+ 2, 232, :_reduce_592,
2907
2909
  1, 217, :_reduce_none,
2908
- 3, 217, :_reduce_592,
2909
- 3, 342, :_reduce_593,
2910
- 2, 342, :_reduce_594,
2911
- 4, 342, :_reduce_595,
2910
+ 3, 217, :_reduce_594,
2911
+ 3, 342, :_reduce_595,
2912
2912
  2, 342, :_reduce_596,
2913
- 2, 342, :_reduce_597,
2913
+ 4, 342, :_reduce_597,
2914
+ 2, 342, :_reduce_598,
2915
+ 2, 342, :_reduce_599,
2914
2916
  1, 191, :_reduce_none,
2915
2917
  1, 191, :_reduce_none,
2916
2918
  1, 191, :_reduce_none,
@@ -2932,13 +2934,13 @@ racc_reduce_table = [
2932
2934
  0, 216, :_reduce_none,
2933
2935
  1, 216, :_reduce_none,
2934
2936
  1, 216, :_reduce_none,
2935
- 1, 242, :_reduce_619,
2937
+ 1, 242, :_reduce_621,
2936
2938
  1, 242, :_reduce_none,
2937
2939
  1, 153, :_reduce_none,
2938
- 2, 153, :_reduce_622,
2939
- 0, 151, :_reduce_623 ]
2940
+ 2, 153, :_reduce_624,
2941
+ 0, 151, :_reduce_625 ]
2940
2942
 
2941
- racc_reduce_n = 624
2943
+ racc_reduce_n = 626
2942
2944
 
2943
2945
  racc_shift_n = 1054
2944
2946
 
@@ -6053,7 +6055,9 @@ def _reduce_483(val, _values, result)
6053
6055
  end
6054
6056
 
6055
6057
  def _reduce_484(val, _values, result)
6058
+ #if defined(RUBY21) || defined(RUBY22 || defined(RUBY23))
6056
6059
  # TODO: tRCURLY -> tSTRING_END
6060
+ #endif
6057
6061
  _, memo, stmt, _ = val
6058
6062
 
6059
6063
  lex_strterm, brace_nest, string_nest, oldcond, oldcmdarg, oldlex_state = memo
@@ -6460,7 +6464,15 @@ def _reduce_555(val, _values, result)
6460
6464
  result
6461
6465
  end
6462
6466
 
6463
- def _reduce_556(val, _values, result)
6467
+ # reduce 556 omitted
6468
+
6469
+ def _reduce_557(val, _values, result)
6470
+ result = val[1]
6471
+
6472
+ result
6473
+ end
6474
+
6475
+ def _reduce_558(val, _values, result)
6464
6476
  case val[0]
6465
6477
  when Symbol then
6466
6478
  result = s(:args)
@@ -6475,7 +6487,7 @@ def _reduce_556(val, _values, result)
6475
6487
  result
6476
6488
  end
6477
6489
 
6478
- def _reduce_557(val, _values, result)
6490
+ def _reduce_559(val, _values, result)
6479
6491
  list, _, item = val
6480
6492
 
6481
6493
  if list.sexp_type == :args then
@@ -6489,9 +6501,9 @@ def _reduce_557(val, _values, result)
6489
6501
  result
6490
6502
  end
6491
6503
 
6492
- # reduce 558 omitted
6504
+ # reduce 560 omitted
6493
6505
 
6494
- def _reduce_559(val, _values, result)
6506
+ def _reduce_561(val, _values, result)
6495
6507
  # TODO: call_args
6496
6508
  label, _ = val[0] # TODO: fix lineno?
6497
6509
  identifier = label.to_sym
@@ -6502,7 +6514,7 @@ def _reduce_559(val, _values, result)
6502
6514
  result
6503
6515
  end
6504
6516
 
6505
- def _reduce_560(val, _values, result)
6517
+ def _reduce_562(val, _values, result)
6506
6518
  label, _ = val[0] # TODO: fix lineno?
6507
6519
  identifier = label.to_sym
6508
6520
  self.env[identifier] = :lvar
@@ -6512,7 +6524,7 @@ def _reduce_560(val, _values, result)
6512
6524
  result
6513
6525
  end
6514
6526
 
6515
- def _reduce_561(val, _values, result)
6527
+ def _reduce_563(val, _values, result)
6516
6528
  # TODO: call_args
6517
6529
  label, _ = val[0] # TODO: fix lineno?
6518
6530
  identifier = label.to_sym
@@ -6523,7 +6535,7 @@ def _reduce_561(val, _values, result)
6523
6535
  result
6524
6536
  end
6525
6537
 
6526
- def _reduce_562(val, _values, result)
6538
+ def _reduce_564(val, _values, result)
6527
6539
  label, _ = val[0] # TODO: fix lineno?
6528
6540
  identifier = label.to_sym
6529
6541
  self.env[identifier] = :lvar
@@ -6533,82 +6545,82 @@ def _reduce_562(val, _values, result)
6533
6545
  result
6534
6546
  end
6535
6547
 
6536
- # reduce 563 omitted
6548
+ # reduce 565 omitted
6537
6549
 
6538
- def _reduce_564(val, _values, result)
6550
+ def _reduce_566(val, _values, result)
6539
6551
  list, _, item = val
6540
6552
  result = list << item.last
6541
6553
 
6542
6554
  result
6543
6555
  end
6544
6556
 
6545
- # reduce 565 omitted
6557
+ # reduce 567 omitted
6546
6558
 
6547
- def _reduce_566(val, _values, result)
6559
+ def _reduce_568(val, _values, result)
6548
6560
  result = args val
6549
6561
 
6550
6562
  result
6551
6563
  end
6552
6564
 
6553
- # reduce 567 omitted
6565
+ # reduce 569 omitted
6554
6566
 
6555
- # reduce 568 omitted
6567
+ # reduce 570 omitted
6556
6568
 
6557
- def _reduce_569(val, _values, result)
6569
+ def _reduce_571(val, _values, result)
6558
6570
  result = :"**#{val[1]}"
6559
6571
 
6560
6572
  result
6561
6573
  end
6562
6574
 
6563
- def _reduce_570(val, _values, result)
6575
+ def _reduce_572(val, _values, result)
6564
6576
  debug20 36, val, result
6565
6577
 
6566
6578
  result
6567
6579
  end
6568
6580
 
6569
- def _reduce_571(val, _values, result)
6581
+ def _reduce_573(val, _values, result)
6570
6582
  result = self.assignable val[0], val[2]
6571
6583
  # TODO: detect duplicate names
6572
6584
 
6573
6585
  result
6574
6586
  end
6575
6587
 
6576
- def _reduce_572(val, _values, result)
6588
+ def _reduce_574(val, _values, result)
6577
6589
  result = self.assignable val[0], val[2]
6578
6590
 
6579
6591
  result
6580
6592
  end
6581
6593
 
6582
- def _reduce_573(val, _values, result)
6594
+ def _reduce_575(val, _values, result)
6583
6595
  result = s(:block, val[0])
6584
6596
 
6585
6597
  result
6586
6598
  end
6587
6599
 
6588
- def _reduce_574(val, _values, result)
6600
+ def _reduce_576(val, _values, result)
6589
6601
  result = val[0]
6590
6602
  result << val[2]
6591
6603
 
6592
6604
  result
6593
6605
  end
6594
6606
 
6595
- def _reduce_575(val, _values, result)
6607
+ def _reduce_577(val, _values, result)
6596
6608
  result = s(:block, val[0])
6597
6609
 
6598
6610
  result
6599
6611
  end
6600
6612
 
6601
- def _reduce_576(val, _values, result)
6613
+ def _reduce_578(val, _values, result)
6602
6614
  result = self.block_append val[0], val[2]
6603
6615
 
6604
6616
  result
6605
6617
  end
6606
6618
 
6607
- # reduce 577 omitted
6619
+ # reduce 579 omitted
6608
6620
 
6609
- # reduce 578 omitted
6621
+ # reduce 580 omitted
6610
6622
 
6611
- def _reduce_579(val, _values, result)
6623
+ def _reduce_581(val, _values, result)
6612
6624
  # TODO: differs from parse.y - needs tests
6613
6625
  name = val[1].to_sym
6614
6626
  self.assignable name
@@ -6617,7 +6629,7 @@ def _reduce_579(val, _values, result)
6617
6629
  result
6618
6630
  end
6619
6631
 
6620
- def _reduce_580(val, _values, result)
6632
+ def _reduce_582(val, _values, result)
6621
6633
  name = :"*"
6622
6634
  self.env[name] = :lvar
6623
6635
  result = name
@@ -6625,11 +6637,11 @@ def _reduce_580(val, _values, result)
6625
6637
  result
6626
6638
  end
6627
6639
 
6628
- # reduce 581 omitted
6640
+ # reduce 583 omitted
6629
6641
 
6630
- # reduce 582 omitted
6642
+ # reduce 584 omitted
6631
6643
 
6632
- def _reduce_583(val, _values, result)
6644
+ def _reduce_585(val, _values, result)
6633
6645
  identifier = val[1].to_sym
6634
6646
 
6635
6647
  self.env[identifier] = :lvar
@@ -6638,27 +6650,27 @@ def _reduce_583(val, _values, result)
6638
6650
  result
6639
6651
  end
6640
6652
 
6641
- def _reduce_584(val, _values, result)
6653
+ def _reduce_586(val, _values, result)
6642
6654
  result = val[1]
6643
6655
 
6644
6656
  result
6645
6657
  end
6646
6658
 
6647
- def _reduce_585(val, _values, result)
6659
+ def _reduce_587(val, _values, result)
6648
6660
  result = nil
6649
6661
 
6650
6662
  result
6651
6663
  end
6652
6664
 
6653
- # reduce 586 omitted
6665
+ # reduce 588 omitted
6654
6666
 
6655
- def _reduce_587(val, _values, result)
6667
+ def _reduce_589(val, _values, result)
6656
6668
  lexer.lex_state = :expr_beg
6657
6669
 
6658
6670
  result
6659
6671
  end
6660
6672
 
6661
- def _reduce_588(val, _values, result)
6673
+ def _reduce_590(val, _values, result)
6662
6674
  result = val[2]
6663
6675
  yyerror "Can't define single method for literals." if
6664
6676
  result[0] == :lit
@@ -6666,21 +6678,21 @@ def _reduce_588(val, _values, result)
6666
6678
  result
6667
6679
  end
6668
6680
 
6669
- def _reduce_589(val, _values, result)
6681
+ def _reduce_591(val, _values, result)
6670
6682
  result = s(:array)
6671
6683
 
6672
6684
  result
6673
6685
  end
6674
6686
 
6675
- def _reduce_590(val, _values, result)
6687
+ def _reduce_592(val, _values, result)
6676
6688
  result = val[0]
6677
6689
 
6678
6690
  result
6679
6691
  end
6680
6692
 
6681
- # reduce 591 omitted
6693
+ # reduce 593 omitted
6682
6694
 
6683
- def _reduce_592(val, _values, result)
6695
+ def _reduce_594(val, _values, result)
6684
6696
  list = val[0].dup
6685
6697
  more = val[2][1..-1]
6686
6698
  list.push(*more) unless more.empty?
@@ -6691,19 +6703,19 @@ def _reduce_592(val, _values, result)
6691
6703
  result
6692
6704
  end
6693
6705
 
6694
- def _reduce_593(val, _values, result)
6706
+ def _reduce_595(val, _values, result)
6695
6707
  result = s(:array, val[0], val[2])
6696
6708
 
6697
6709
  result
6698
6710
  end
6699
6711
 
6700
- def _reduce_594(val, _values, result)
6712
+ def _reduce_596(val, _values, result)
6701
6713
  result = s(:array, s(:lit, val[0][0].to_sym), val[1])
6702
6714
 
6703
6715
  result
6704
6716
  end
6705
6717
 
6706
- def _reduce_595(val, _values, result)
6718
+ def _reduce_597(val, _values, result)
6707
6719
  _, sym, _, value = val
6708
6720
  sym[0] = :dsym
6709
6721
  result = s(:array, sym, value)
@@ -6711,23 +6723,19 @@ def _reduce_595(val, _values, result)
6711
6723
  result
6712
6724
  end
6713
6725
 
6714
- def _reduce_596(val, _values, result)
6726
+ def _reduce_598(val, _values, result)
6715
6727
  raise "not yet: #{val.inspect}"
6716
6728
  # result = s(:array, s(:lit, val[1].to_sym), val[1])
6717
6729
 
6718
6730
  result
6719
6731
  end
6720
6732
 
6721
- def _reduce_597(val, _values, result)
6733
+ def _reduce_599(val, _values, result)
6722
6734
  result = s(:array, s(:kwsplat, val[1]))
6723
6735
 
6724
6736
  result
6725
6737
  end
6726
6738
 
6727
- # reduce 598 omitted
6728
-
6729
- # reduce 599 omitted
6730
-
6731
6739
  # reduce 600 omitted
6732
6740
 
6733
6741
  # reduce 601 omitted
@@ -6766,21 +6774,25 @@ end
6766
6774
 
6767
6775
  # reduce 618 omitted
6768
6776
 
6769
- def _reduce_619(val, _values, result)
6777
+ # reduce 619 omitted
6778
+
6779
+ # reduce 620 omitted
6780
+
6781
+ def _reduce_621(val, _values, result)
6770
6782
  yyerrok
6771
6783
  result
6772
6784
  end
6773
6785
 
6774
- # reduce 620 omitted
6786
+ # reduce 622 omitted
6775
6787
 
6776
- # reduce 621 omitted
6788
+ # reduce 623 omitted
6777
6789
 
6778
- def _reduce_622(val, _values, result)
6790
+ def _reduce_624(val, _values, result)
6779
6791
  yyerrok
6780
6792
  result
6781
6793
  end
6782
6794
 
6783
- def _reduce_623(val, _values, result)
6795
+ def _reduce_625(val, _values, result)
6784
6796
  result = nil;
6785
6797
  result
6786
6798
  end