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/ruby25_parser.y
CHANGED
@@ -689,8 +689,7 @@ rule
|
|
689
689
|
|
690
690
|
cpath: tCOLON3 cname
|
691
691
|
{
|
692
|
-
|
693
|
-
result = s(:colon3, name.to_sym).line line
|
692
|
+
result = wrap :colon3, val[1]
|
694
693
|
}
|
695
694
|
| cname
|
696
695
|
{
|
@@ -715,9 +714,7 @@ rule
|
|
715
714
|
|
716
715
|
fitem: fname
|
717
716
|
{
|
718
|
-
|
719
|
-
|
720
|
-
result = s(:lit, id.to_sym).line line
|
717
|
+
result = wrap :lit, val[0]
|
721
718
|
}
|
722
719
|
| symbol
|
723
720
|
|
@@ -786,9 +783,9 @@ rule
|
|
786
783
|
}
|
787
784
|
| tCOLON3 tCONSTANT tOP_ASGN arg_rhs
|
788
785
|
{
|
789
|
-
_,
|
786
|
+
_, lhs, op, rhs = val
|
790
787
|
|
791
|
-
lhs =
|
788
|
+
lhs = wrap :colon3, lhs
|
792
789
|
result = new_const_op_asgn [lhs, op, rhs]
|
793
790
|
}
|
794
791
|
| backref tOP_ASGN arg_rhs
|
@@ -1190,9 +1187,7 @@ rule
|
|
1190
1187
|
}
|
1191
1188
|
| tCOLON3 tCONSTANT
|
1192
1189
|
{
|
1193
|
-
|
1194
|
-
|
1195
|
-
result = s(:colon3, id.to_sym).line line
|
1190
|
+
result = wrap :colon3, val[1]
|
1196
1191
|
}
|
1197
1192
|
| tLBRACK { result = lexer.lineno } aref_args tRBRACK
|
1198
1193
|
{
|
@@ -1686,8 +1681,7 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1686
1681
|
|
1687
1682
|
bvar: tIDENTIFIER
|
1688
1683
|
{
|
1689
|
-
|
1690
|
-
result = s(:shadow, id.to_sym).line line
|
1684
|
+
result = wrap :shadow, val[0]
|
1691
1685
|
}
|
1692
1686
|
| f_bad_arg
|
1693
1687
|
|
@@ -2202,18 +2196,15 @@ regexp_contents: none
|
|
2202
2196
|
|
2203
2197
|
string_dvar: tGVAR
|
2204
2198
|
{
|
2205
|
-
|
2206
|
-
result = s(:gvar, id.to_sym).line line
|
2199
|
+
result = wrap :gvar, val[0]
|
2207
2200
|
}
|
2208
2201
|
| tIVAR
|
2209
2202
|
{
|
2210
|
-
|
2211
|
-
result = s(:ivar, id.to_sym).line line
|
2203
|
+
result = wrap :ivar, val[0]
|
2212
2204
|
}
|
2213
2205
|
| tCVAR
|
2214
2206
|
{
|
2215
|
-
|
2216
|
-
result = s(:cvar, id.to_sym).line line
|
2207
|
+
result = wrap :cvar, val[0]
|
2217
2208
|
}
|
2218
2209
|
| backref
|
2219
2210
|
|
@@ -2222,17 +2213,13 @@ regexp_contents: none
|
|
2222
2213
|
|
2223
2214
|
ssym: tSYMBEG sym
|
2224
2215
|
{
|
2225
|
-
_, (id, line) = val
|
2226
|
-
|
2227
2216
|
lexer.lex_state = EXPR_END
|
2228
|
-
result =
|
2217
|
+
result = wrap :lit, val[1]
|
2229
2218
|
}
|
2230
2219
|
| tSYMBOL
|
2231
2220
|
{
|
2232
|
-
(id, line), = val
|
2233
|
-
|
2234
2221
|
lexer.lex_state = EXPR_END
|
2235
|
-
result =
|
2222
|
+
result = wrap :lit, val[0]
|
2236
2223
|
}
|
2237
2224
|
|
2238
2225
|
sym: fname | tIVAR | tGVAR | tCVAR
|
@@ -2676,10 +2663,10 @@ keyword_variable: kNIL { result = s(:nil).line lexer.lineno }
|
|
2676
2663
|
}
|
2677
2664
|
| tLABEL arg_value
|
2678
2665
|
{
|
2679
|
-
|
2666
|
+
label, arg = val
|
2680
2667
|
|
2681
|
-
lit =
|
2682
|
-
result = s(:array, lit, arg).line line
|
2668
|
+
lit = wrap :lit, label
|
2669
|
+
result = s(:array, lit, arg).line lit.line
|
2683
2670
|
}
|
2684
2671
|
| tSTRING_BEG string_contents tLABEL_END arg_value
|
2685
2672
|
{
|