ruby_parser 3.18.1 → 3.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/History.rdoc +21 -0
- data/Manifest.txt +2 -0
- data/README.rdoc +8 -6
- data/Rakefile +8 -7
- data/gauntlet.md +17 -15
- data/lib/ruby20_parser.rb +5871 -2026
- data/lib/ruby20_parser.y +14 -27
- data/lib/ruby21_parser.rb +5847 -2049
- data/lib/ruby21_parser.y +14 -27
- data/lib/ruby22_parser.rb +5969 -2074
- data/lib/ruby22_parser.y +14 -27
- data/lib/ruby23_parser.rb +5973 -2078
- data/lib/ruby23_parser.y +14 -27
- data/lib/ruby24_parser.rb +6061 -2098
- data/lib/ruby24_parser.y +14 -27
- data/lib/ruby25_parser.rb +6061 -2098
- data/lib/ruby25_parser.y +14 -27
- data/lib/ruby26_parser.rb +6063 -2097
- data/lib/ruby26_parser.y +14 -27
- data/lib/ruby27_parser.rb +6862 -2399
- data/lib/ruby27_parser.y +19 -41
- data/lib/ruby30_parser.rb +7162 -2671
- data/lib/ruby30_parser.y +65 -90
- data/lib/ruby31_parser.rb +13622 -0
- data/lib/ruby31_parser.y +3481 -0
- data/lib/ruby3_parser.yy +149 -89
- data/lib/ruby_parser.rb +2 -0
- data/lib/ruby_parser.yy +19 -41
- data/lib/ruby_parser_extras.rb +46 -1
- data/test/test_ruby_parser.rb +116 -0
- data.tar.gz.sig +0 -0
- metadata +18 -13
- metadata.gz.sig +0 -0
data/lib/ruby22_parser.y
CHANGED
@@ -680,8 +680,7 @@ rule
|
|
680
680
|
|
681
681
|
cpath: tCOLON3 cname
|
682
682
|
{
|
683
|
-
|
684
|
-
result = s(:colon3, name.to_sym).line line
|
683
|
+
result = wrap :colon3, val[1]
|
685
684
|
}
|
686
685
|
| cname
|
687
686
|
{
|
@@ -706,9 +705,7 @@ rule
|
|
706
705
|
|
707
706
|
fitem: fname
|
708
707
|
{
|
709
|
-
|
710
|
-
|
711
|
-
result = s(:lit, id.to_sym).line line
|
708
|
+
result = wrap :lit, val[0]
|
712
709
|
}
|
713
710
|
| symbol
|
714
711
|
|
@@ -777,9 +774,9 @@ rule
|
|
777
774
|
}
|
778
775
|
| tCOLON3 tCONSTANT tOP_ASGN arg_rhs
|
779
776
|
{
|
780
|
-
_,
|
777
|
+
_, lhs, op, rhs = val
|
781
778
|
|
782
|
-
lhs =
|
779
|
+
lhs = wrap :colon3, lhs
|
783
780
|
result = new_const_op_asgn [lhs, op, rhs]
|
784
781
|
}
|
785
782
|
| backref tOP_ASGN arg_rhs
|
@@ -1181,9 +1178,7 @@ rule
|
|
1181
1178
|
}
|
1182
1179
|
| tCOLON3 tCONSTANT
|
1183
1180
|
{
|
1184
|
-
|
1185
|
-
|
1186
|
-
result = s(:colon3, id.to_sym).line line
|
1181
|
+
result = wrap :colon3, val[1]
|
1187
1182
|
}
|
1188
1183
|
| tLBRACK { result = lexer.lineno } aref_args tRBRACK
|
1189
1184
|
{
|
@@ -1677,8 +1672,7 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1677
1672
|
|
1678
1673
|
bvar: tIDENTIFIER
|
1679
1674
|
{
|
1680
|
-
|
1681
|
-
result = s(:shadow, id.to_sym).line line
|
1675
|
+
result = wrap :shadow, val[0]
|
1682
1676
|
}
|
1683
1677
|
| f_bad_arg
|
1684
1678
|
|
@@ -2193,18 +2187,15 @@ regexp_contents: none
|
|
2193
2187
|
|
2194
2188
|
string_dvar: tGVAR
|
2195
2189
|
{
|
2196
|
-
|
2197
|
-
result = s(:gvar, id.to_sym).line line
|
2190
|
+
result = wrap :gvar, val[0]
|
2198
2191
|
}
|
2199
2192
|
| tIVAR
|
2200
2193
|
{
|
2201
|
-
|
2202
|
-
result = s(:ivar, id.to_sym).line line
|
2194
|
+
result = wrap :ivar, val[0]
|
2203
2195
|
}
|
2204
2196
|
| tCVAR
|
2205
2197
|
{
|
2206
|
-
|
2207
|
-
result = s(:cvar, id.to_sym).line line
|
2198
|
+
result = wrap :cvar, val[0]
|
2208
2199
|
}
|
2209
2200
|
| backref
|
2210
2201
|
|
@@ -2213,17 +2204,13 @@ regexp_contents: none
|
|
2213
2204
|
|
2214
2205
|
ssym: tSYMBEG sym
|
2215
2206
|
{
|
2216
|
-
_, (id, line) = val
|
2217
|
-
|
2218
2207
|
lexer.lex_state = EXPR_END
|
2219
|
-
result =
|
2208
|
+
result = wrap :lit, val[1]
|
2220
2209
|
}
|
2221
2210
|
| tSYMBOL
|
2222
2211
|
{
|
2223
|
-
(id, line), = val
|
2224
|
-
|
2225
2212
|
lexer.lex_state = EXPR_END
|
2226
|
-
result =
|
2213
|
+
result = wrap :lit, val[0]
|
2227
2214
|
}
|
2228
2215
|
|
2229
2216
|
sym: fname | tIVAR | tGVAR | tCVAR
|
@@ -2667,10 +2654,10 @@ keyword_variable: kNIL { result = s(:nil).line lexer.lineno }
|
|
2667
2654
|
}
|
2668
2655
|
| tLABEL arg_value
|
2669
2656
|
{
|
2670
|
-
|
2657
|
+
label, arg = val
|
2671
2658
|
|
2672
|
-
lit =
|
2673
|
-
result = s(:array, lit, arg).line line
|
2659
|
+
lit = wrap :lit, label
|
2660
|
+
result = s(:array, lit, arg).line lit.line
|
2674
2661
|
}
|
2675
2662
|
| tSTRING_BEG string_contents tLABEL_END arg_value
|
2676
2663
|
{
|