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/ruby21_parser.y
CHANGED
@@ -679,8 +679,7 @@ rule
|
|
679
679
|
|
680
680
|
cpath: tCOLON3 cname
|
681
681
|
{
|
682
|
-
|
683
|
-
result = s(:colon3, name.to_sym).line line
|
682
|
+
result = wrap :colon3, val[1]
|
684
683
|
}
|
685
684
|
| cname
|
686
685
|
{
|
@@ -705,9 +704,7 @@ rule
|
|
705
704
|
|
706
705
|
fitem: fname
|
707
706
|
{
|
708
|
-
|
709
|
-
|
710
|
-
result = s(:lit, id.to_sym).line line
|
707
|
+
result = wrap :lit, val[0]
|
711
708
|
}
|
712
709
|
| symbol
|
713
710
|
|
@@ -776,9 +773,9 @@ rule
|
|
776
773
|
}
|
777
774
|
| tCOLON3 tCONSTANT tOP_ASGN arg_rhs
|
778
775
|
{
|
779
|
-
_,
|
776
|
+
_, lhs, op, rhs = val
|
780
777
|
|
781
|
-
lhs =
|
778
|
+
lhs = wrap :colon3, lhs
|
782
779
|
result = new_const_op_asgn [lhs, op, rhs]
|
783
780
|
}
|
784
781
|
| backref tOP_ASGN arg_rhs
|
@@ -1180,9 +1177,7 @@ rule
|
|
1180
1177
|
}
|
1181
1178
|
| tCOLON3 tCONSTANT
|
1182
1179
|
{
|
1183
|
-
|
1184
|
-
|
1185
|
-
result = s(:colon3, id.to_sym).line line
|
1180
|
+
result = wrap :colon3, val[1]
|
1186
1181
|
}
|
1187
1182
|
| tLBRACK { result = lexer.lineno } aref_args tRBRACK
|
1188
1183
|
{
|
@@ -1206,15 +1201,21 @@ rule
|
|
1206
1201
|
}
|
1207
1202
|
| kYIELD tLPAREN2 call_args rparen
|
1208
1203
|
{
|
1209
|
-
|
1204
|
+
(_, line), _, args, _ = val
|
1205
|
+
|
1206
|
+
result = new_yield(args).line line
|
1210
1207
|
}
|
1211
1208
|
| kYIELD tLPAREN2 rparen
|
1212
1209
|
{
|
1213
|
-
|
1210
|
+
(_, line), _, _ = val
|
1211
|
+
|
1212
|
+
result = new_yield.line line
|
1214
1213
|
}
|
1215
1214
|
| kYIELD
|
1216
1215
|
{
|
1217
|
-
|
1216
|
+
(_, line), = val
|
1217
|
+
|
1218
|
+
result = new_yield.line line
|
1218
1219
|
}
|
1219
1220
|
| kDEFINED opt_nl tLPAREN2 expr rparen
|
1220
1221
|
{
|
@@ -1670,8 +1671,7 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1670
1671
|
|
1671
1672
|
bvar: tIDENTIFIER
|
1672
1673
|
{
|
1673
|
-
|
1674
|
-
result = s(:shadow, id.to_sym).line line
|
1674
|
+
result = wrap :shadow, val[0]
|
1675
1675
|
}
|
1676
1676
|
| f_bad_arg
|
1677
1677
|
|
@@ -2186,18 +2186,15 @@ regexp_contents: none
|
|
2186
2186
|
|
2187
2187
|
string_dvar: tGVAR
|
2188
2188
|
{
|
2189
|
-
|
2190
|
-
result = s(:gvar, id.to_sym).line line
|
2189
|
+
result = wrap :gvar, val[0]
|
2191
2190
|
}
|
2192
2191
|
| tIVAR
|
2193
2192
|
{
|
2194
|
-
|
2195
|
-
result = s(:ivar, id.to_sym).line line
|
2193
|
+
result = wrap :ivar, val[0]
|
2196
2194
|
}
|
2197
2195
|
| tCVAR
|
2198
2196
|
{
|
2199
|
-
|
2200
|
-
result = s(:cvar, id.to_sym).line line
|
2197
|
+
result = wrap :cvar, val[0]
|
2201
2198
|
}
|
2202
2199
|
| backref
|
2203
2200
|
|
@@ -2206,17 +2203,13 @@ regexp_contents: none
|
|
2206
2203
|
|
2207
2204
|
ssym: tSYMBEG sym
|
2208
2205
|
{
|
2209
|
-
_, (id, line) = val
|
2210
|
-
|
2211
2206
|
lexer.lex_state = EXPR_END
|
2212
|
-
result =
|
2207
|
+
result = wrap :lit, val[1]
|
2213
2208
|
}
|
2214
2209
|
| tSYMBOL
|
2215
2210
|
{
|
2216
|
-
(id, line), = val
|
2217
|
-
|
2218
2211
|
lexer.lex_state = EXPR_END
|
2219
|
-
result =
|
2212
|
+
result = wrap :lit, val[0]
|
2220
2213
|
}
|
2221
2214
|
|
2222
2215
|
sym: fname | tIVAR | tGVAR | tCVAR
|
@@ -2658,10 +2651,10 @@ keyword_variable: kNIL { result = s(:nil).line lexer.lineno }
|
|
2658
2651
|
}
|
2659
2652
|
| tLABEL arg_value
|
2660
2653
|
{
|
2661
|
-
|
2654
|
+
label, arg = val
|
2662
2655
|
|
2663
|
-
lit =
|
2664
|
-
result = s(:array, lit, arg).line line
|
2656
|
+
lit = wrap :lit, label
|
2657
|
+
result = s(:array, lit, arg).line lit.line
|
2665
2658
|
}
|
2666
2659
|
| tDSTAR arg_value
|
2667
2660
|
{
|