ruby_parser 3.18.0 → 3.19.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/History.rdoc +40 -0
- data/Manifest.txt +2 -0
- data/README.rdoc +8 -6
- data/Rakefile +18 -7
- data/gauntlet.md +19 -18
- data/lib/ruby20_parser.rb +5880 -2029
- data/lib/ruby20_parser.y +23 -30
- data/lib/ruby21_parser.rb +5856 -2052
- data/lib/ruby21_parser.y +23 -30
- data/lib/ruby22_parser.rb +5978 -2077
- data/lib/ruby22_parser.y +23 -30
- data/lib/ruby23_parser.rb +5982 -2081
- data/lib/ruby23_parser.y +23 -30
- data/lib/ruby24_parser.rb +6070 -2101
- data/lib/ruby24_parser.y +23 -30
- data/lib/ruby25_parser.rb +6070 -2101
- data/lib/ruby25_parser.y +23 -30
- data/lib/ruby26_parser.rb +6072 -2100
- data/lib/ruby26_parser.y +23 -30
- data/lib/ruby27_parser.rb +6871 -2402
- data/lib/ruby27_parser.y +28 -44
- data/lib/ruby30_parser.rb +7177 -2676
- data/lib/ruby30_parser.y +77 -93
- data/lib/ruby31_parser.rb +13622 -0
- data/lib/ruby31_parser.y +3481 -0
- data/lib/ruby3_parser.yy +161 -92
- data/lib/ruby_parser.rb +2 -0
- data/lib/ruby_parser.yy +28 -44
- data/lib/ruby_parser_extras.rb +55 -2
- data/test/test_ruby_parser.rb +526 -344
- data.tar.gz.sig +1 -4
- metadata +18 -13
- metadata.gz.sig +0 -0
data/lib/ruby23_parser.y
CHANGED
@@ -681,8 +681,7 @@ rule
|
|
681
681
|
|
682
682
|
cpath: tCOLON3 cname
|
683
683
|
{
|
684
|
-
|
685
|
-
result = s(:colon3, name.to_sym).line line
|
684
|
+
result = wrap :colon3, val[1]
|
686
685
|
}
|
687
686
|
| cname
|
688
687
|
{
|
@@ -707,9 +706,7 @@ rule
|
|
707
706
|
|
708
707
|
fitem: fname
|
709
708
|
{
|
710
|
-
|
711
|
-
|
712
|
-
result = s(:lit, id.to_sym).line line
|
709
|
+
result = wrap :lit, val[0]
|
713
710
|
}
|
714
711
|
| symbol
|
715
712
|
|
@@ -778,9 +775,9 @@ rule
|
|
778
775
|
}
|
779
776
|
| tCOLON3 tCONSTANT tOP_ASGN arg_rhs
|
780
777
|
{
|
781
|
-
_,
|
778
|
+
_, lhs, op, rhs = val
|
782
779
|
|
783
|
-
lhs =
|
780
|
+
lhs = wrap :colon3, lhs
|
784
781
|
result = new_const_op_asgn [lhs, op, rhs]
|
785
782
|
}
|
786
783
|
| backref tOP_ASGN arg_rhs
|
@@ -1182,9 +1179,7 @@ rule
|
|
1182
1179
|
}
|
1183
1180
|
| tCOLON3 tCONSTANT
|
1184
1181
|
{
|
1185
|
-
|
1186
|
-
|
1187
|
-
result = s(:colon3, id.to_sym).line line
|
1182
|
+
result = wrap :colon3, val[1]
|
1188
1183
|
}
|
1189
1184
|
| tLBRACK { result = lexer.lineno } aref_args tRBRACK
|
1190
1185
|
{
|
@@ -1208,15 +1203,21 @@ rule
|
|
1208
1203
|
}
|
1209
1204
|
| kYIELD tLPAREN2 call_args rparen
|
1210
1205
|
{
|
1211
|
-
|
1206
|
+
(_, line), _, args, _ = val
|
1207
|
+
|
1208
|
+
result = new_yield(args).line line
|
1212
1209
|
}
|
1213
1210
|
| kYIELD tLPAREN2 rparen
|
1214
1211
|
{
|
1215
|
-
|
1212
|
+
(_, line), _, _ = val
|
1213
|
+
|
1214
|
+
result = new_yield.line line
|
1216
1215
|
}
|
1217
1216
|
| kYIELD
|
1218
1217
|
{
|
1219
|
-
|
1218
|
+
(_, line), = val
|
1219
|
+
|
1220
|
+
result = new_yield.line line
|
1220
1221
|
}
|
1221
1222
|
| kDEFINED opt_nl tLPAREN2 expr rparen
|
1222
1223
|
{
|
@@ -1672,8 +1673,7 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1672
1673
|
|
1673
1674
|
bvar: tIDENTIFIER
|
1674
1675
|
{
|
1675
|
-
|
1676
|
-
result = s(:shadow, id.to_sym).line line
|
1676
|
+
result = wrap :shadow, val[0]
|
1677
1677
|
}
|
1678
1678
|
| f_bad_arg
|
1679
1679
|
|
@@ -2188,18 +2188,15 @@ regexp_contents: none
|
|
2188
2188
|
|
2189
2189
|
string_dvar: tGVAR
|
2190
2190
|
{
|
2191
|
-
|
2192
|
-
result = s(:gvar, id.to_sym).line line
|
2191
|
+
result = wrap :gvar, val[0]
|
2193
2192
|
}
|
2194
2193
|
| tIVAR
|
2195
2194
|
{
|
2196
|
-
|
2197
|
-
result = s(:ivar, id.to_sym).line line
|
2195
|
+
result = wrap :ivar, val[0]
|
2198
2196
|
}
|
2199
2197
|
| tCVAR
|
2200
2198
|
{
|
2201
|
-
|
2202
|
-
result = s(:cvar, id.to_sym).line line
|
2199
|
+
result = wrap :cvar, val[0]
|
2203
2200
|
}
|
2204
2201
|
| backref
|
2205
2202
|
|
@@ -2208,17 +2205,13 @@ regexp_contents: none
|
|
2208
2205
|
|
2209
2206
|
ssym: tSYMBEG sym
|
2210
2207
|
{
|
2211
|
-
_, (id, line) = val
|
2212
|
-
|
2213
2208
|
lexer.lex_state = EXPR_END
|
2214
|
-
result =
|
2209
|
+
result = wrap :lit, val[1]
|
2215
2210
|
}
|
2216
2211
|
| tSYMBOL
|
2217
2212
|
{
|
2218
|
-
(id, line), = val
|
2219
|
-
|
2220
2213
|
lexer.lex_state = EXPR_END
|
2221
|
-
result =
|
2214
|
+
result = wrap :lit, val[0]
|
2222
2215
|
}
|
2223
2216
|
|
2224
2217
|
sym: fname | tIVAR | tGVAR | tCVAR
|
@@ -2662,10 +2655,10 @@ keyword_variable: kNIL { result = s(:nil).line lexer.lineno }
|
|
2662
2655
|
}
|
2663
2656
|
| tLABEL arg_value
|
2664
2657
|
{
|
2665
|
-
|
2658
|
+
label, arg = val
|
2666
2659
|
|
2667
|
-
lit =
|
2668
|
-
result = s(:array, lit, arg).line line
|
2660
|
+
lit = wrap :lit, label
|
2661
|
+
result = s(:array, lit, arg).line lit.line
|
2669
2662
|
}
|
2670
2663
|
| tSTRING_BEG string_contents tLABEL_END arg_value
|
2671
2664
|
{
|