ruby_parser 3.18.1 → 3.19.0
Sign up to get free protection for your applications and to get access to all the features.
- 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/ruby26_parser.y
CHANGED
@@ -690,8 +690,7 @@ rule
|
|
690
690
|
|
691
691
|
cpath: tCOLON3 cname
|
692
692
|
{
|
693
|
-
|
694
|
-
result = s(:colon3, name.to_sym).line line
|
693
|
+
result = wrap :colon3, val[1]
|
695
694
|
}
|
696
695
|
| cname
|
697
696
|
{
|
@@ -716,9 +715,7 @@ rule
|
|
716
715
|
|
717
716
|
fitem: fname
|
718
717
|
{
|
719
|
-
|
720
|
-
|
721
|
-
result = s(:lit, id.to_sym).line line
|
718
|
+
result = wrap :lit, val[0]
|
722
719
|
}
|
723
720
|
| symbol
|
724
721
|
|
@@ -787,9 +784,9 @@ rule
|
|
787
784
|
}
|
788
785
|
| tCOLON3 tCONSTANT tOP_ASGN arg_rhs
|
789
786
|
{
|
790
|
-
_,
|
787
|
+
_, lhs, op, rhs = val
|
791
788
|
|
792
|
-
lhs =
|
789
|
+
lhs = wrap :colon3, lhs
|
793
790
|
result = new_const_op_asgn [lhs, op, rhs]
|
794
791
|
}
|
795
792
|
| backref tOP_ASGN arg_rhs
|
@@ -1205,9 +1202,7 @@ rule
|
|
1205
1202
|
}
|
1206
1203
|
| tCOLON3 tCONSTANT
|
1207
1204
|
{
|
1208
|
-
|
1209
|
-
|
1210
|
-
result = s(:colon3, id.to_sym).line line
|
1205
|
+
result = wrap :colon3, val[1]
|
1211
1206
|
}
|
1212
1207
|
| tLBRACK { result = lexer.lineno } aref_args tRBRACK
|
1213
1208
|
{
|
@@ -1701,8 +1696,7 @@ opt_block_args_tail: tCOMMA block_args_tail
|
|
1701
1696
|
|
1702
1697
|
bvar: tIDENTIFIER
|
1703
1698
|
{
|
1704
|
-
|
1705
|
-
result = s(:shadow, id.to_sym).line line
|
1699
|
+
result = wrap :shadow, val[0]
|
1706
1700
|
}
|
1707
1701
|
| f_bad_arg
|
1708
1702
|
|
@@ -2217,18 +2211,15 @@ regexp_contents: none
|
|
2217
2211
|
|
2218
2212
|
string_dvar: tGVAR
|
2219
2213
|
{
|
2220
|
-
|
2221
|
-
result = s(:gvar, id.to_sym).line line
|
2214
|
+
result = wrap :gvar, val[0]
|
2222
2215
|
}
|
2223
2216
|
| tIVAR
|
2224
2217
|
{
|
2225
|
-
|
2226
|
-
result = s(:ivar, id.to_sym).line line
|
2218
|
+
result = wrap :ivar, val[0]
|
2227
2219
|
}
|
2228
2220
|
| tCVAR
|
2229
2221
|
{
|
2230
|
-
|
2231
|
-
result = s(:cvar, id.to_sym).line line
|
2222
|
+
result = wrap :cvar, val[0]
|
2232
2223
|
}
|
2233
2224
|
| backref
|
2234
2225
|
|
@@ -2237,17 +2228,13 @@ regexp_contents: none
|
|
2237
2228
|
|
2238
2229
|
ssym: tSYMBEG sym
|
2239
2230
|
{
|
2240
|
-
_, (id, line) = val
|
2241
|
-
|
2242
2231
|
lexer.lex_state = EXPR_END
|
2243
|
-
result =
|
2232
|
+
result = wrap :lit, val[1]
|
2244
2233
|
}
|
2245
2234
|
| tSYMBOL
|
2246
2235
|
{
|
2247
|
-
(id, line), = val
|
2248
|
-
|
2249
2236
|
lexer.lex_state = EXPR_END
|
2250
|
-
result =
|
2237
|
+
result = wrap :lit, val[0]
|
2251
2238
|
}
|
2252
2239
|
|
2253
2240
|
sym: fname | tIVAR | tGVAR | tCVAR
|
@@ -2691,10 +2678,10 @@ keyword_variable: kNIL { result = s(:nil).line lexer.lineno }
|
|
2691
2678
|
}
|
2692
2679
|
| tLABEL arg_value
|
2693
2680
|
{
|
2694
|
-
|
2681
|
+
label, arg = val
|
2695
2682
|
|
2696
|
-
lit =
|
2697
|
-
result = s(:array, lit, arg).line line
|
2683
|
+
lit = wrap :lit, label
|
2684
|
+
result = s(:array, lit, arg).line lit.line
|
2698
2685
|
}
|
2699
2686
|
| tSTRING_BEG string_contents tLABEL_END arg_value
|
2700
2687
|
{
|