ruby_parser 3.0.0.a9 → 3.0.0.a10
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of ruby_parser might be problematic. Click here for more details.
- data.tar.gz.sig +0 -0
- data/History.txt +13 -0
- data/lib/ruby18_parser.rb +23 -23
- data/lib/ruby18_parser.y +23 -23
- data/lib/ruby19_parser.rb +98 -91
- data/lib/ruby19_parser.y +98 -91
- data/lib/ruby_parser_extras.rb +50 -120
- data/test/test_ruby_parser.rb +310 -106
- metadata +4 -4
- metadata.gz.sig +0 -0
data.tar.gz.sig
CHANGED
Binary file
|
data/History.txt
CHANGED
@@ -1,3 +1,16 @@
|
|
1
|
+
=== 3.0.0.a10 / 2012-10-26
|
2
|
+
|
3
|
+
* 1 major enhancement:
|
4
|
+
|
5
|
+
* iter nodes are now structurally the same as defs. Block args are COMPLETELY different.
|
6
|
+
|
7
|
+
* 4 minor enhancements:
|
8
|
+
|
9
|
+
* 1.8 and 1.9 now treat f { |(...)| } differently, per MRI.
|
10
|
+
* 1.9: Added __ENCODING__ support. (witlessbird)
|
11
|
+
* 1.9: Finished coverage for masgn variants in block args
|
12
|
+
* 1.9: covered all forms of block args: optional, splat, block, and destructuring
|
13
|
+
|
1
14
|
=== 3.0.0.a9 / 2012-10-22
|
2
15
|
|
3
16
|
Holy crap! I've hit a 99.92% success rate against 558k files! 492
|
data/lib/ruby18_parser.rb
CHANGED
@@ -4782,85 +4782,85 @@ def _reduce_340(val, _values, result)
|
|
4782
4782
|
end
|
4783
4783
|
|
4784
4784
|
def _reduce_341(val, _values, result)
|
4785
|
-
result = s(:array, val[0])
|
4785
|
+
result = s(:array, clean_mlhs(val[0]))
|
4786
4786
|
|
4787
4787
|
result
|
4788
4788
|
end
|
4789
4789
|
|
4790
4790
|
def _reduce_342(val, _values, result)
|
4791
|
-
result = list_append val[0], val[2]
|
4791
|
+
result = list_append val[0], clean_mlhs(val[2])
|
4792
4792
|
|
4793
4793
|
result
|
4794
4794
|
end
|
4795
4795
|
|
4796
4796
|
def _reduce_343(val, _values, result)
|
4797
|
-
result =
|
4797
|
+
result = block_var18 val[0], nil, nil
|
4798
4798
|
|
4799
4799
|
result
|
4800
4800
|
end
|
4801
4801
|
|
4802
4802
|
def _reduce_344(val, _values, result)
|
4803
|
-
result =
|
4803
|
+
result = block_var18 val[0], nil, nil
|
4804
4804
|
|
4805
4805
|
result
|
4806
4806
|
end
|
4807
4807
|
|
4808
4808
|
def _reduce_345(val, _values, result)
|
4809
|
-
result =
|
4809
|
+
result = block_var18 val[0], nil, val[3]
|
4810
4810
|
|
4811
4811
|
result
|
4812
4812
|
end
|
4813
4813
|
|
4814
4814
|
def _reduce_346(val, _values, result)
|
4815
|
-
result =
|
4815
|
+
result = block_var18 val[0], val[3], val[6]
|
4816
4816
|
|
4817
4817
|
result
|
4818
4818
|
end
|
4819
4819
|
|
4820
4820
|
def _reduce_347(val, _values, result)
|
4821
|
-
result =
|
4821
|
+
result = block_var18 val[0], s(:splat), val[5]
|
4822
4822
|
|
4823
4823
|
result
|
4824
4824
|
end
|
4825
4825
|
|
4826
4826
|
def _reduce_348(val, _values, result)
|
4827
|
-
result =
|
4827
|
+
result = block_var18 val[0], val[3], nil
|
4828
4828
|
|
4829
4829
|
result
|
4830
4830
|
end
|
4831
4831
|
|
4832
4832
|
def _reduce_349(val, _values, result)
|
4833
|
-
result =
|
4833
|
+
result = block_var18 val[0], s(:splat), nil
|
4834
4834
|
|
4835
4835
|
result
|
4836
4836
|
end
|
4837
4837
|
|
4838
4838
|
def _reduce_350(val, _values, result)
|
4839
|
-
result =
|
4839
|
+
result = block_var18 nil, val[1], val[4]
|
4840
4840
|
|
4841
4841
|
result
|
4842
4842
|
end
|
4843
4843
|
|
4844
4844
|
def _reduce_351(val, _values, result)
|
4845
|
-
result =
|
4845
|
+
result = block_var18 nil, s(:splat), val[3]
|
4846
4846
|
|
4847
4847
|
result
|
4848
4848
|
end
|
4849
4849
|
|
4850
4850
|
def _reduce_352(val, _values, result)
|
4851
|
-
result =
|
4851
|
+
result = block_var18 nil, val[1], nil
|
4852
4852
|
|
4853
4853
|
result
|
4854
4854
|
end
|
4855
4855
|
|
4856
4856
|
def _reduce_353(val, _values, result)
|
4857
|
-
result =
|
4857
|
+
result = block_var18 nil, s(:splat), nil
|
4858
4858
|
|
4859
4859
|
result
|
4860
4860
|
end
|
4861
4861
|
|
4862
4862
|
def _reduce_354(val, _values, result)
|
4863
|
-
result =
|
4863
|
+
result = block_var18 nil, nil, val[1]
|
4864
4864
|
|
4865
4865
|
result
|
4866
4866
|
end
|
@@ -5463,55 +5463,55 @@ def _reduce_458(val, _values, result)
|
|
5463
5463
|
end
|
5464
5464
|
|
5465
5465
|
def _reduce_459(val, _values, result)
|
5466
|
-
result = args val
|
5466
|
+
result = args val
|
5467
5467
|
|
5468
5468
|
result
|
5469
5469
|
end
|
5470
5470
|
|
5471
5471
|
def _reduce_460(val, _values, result)
|
5472
|
-
result = args val
|
5472
|
+
result = args val
|
5473
5473
|
|
5474
5474
|
result
|
5475
5475
|
end
|
5476
5476
|
|
5477
5477
|
def _reduce_461(val, _values, result)
|
5478
|
-
result = args val
|
5478
|
+
result = args val
|
5479
5479
|
|
5480
5480
|
result
|
5481
5481
|
end
|
5482
5482
|
|
5483
5483
|
def _reduce_462(val, _values, result)
|
5484
|
-
result = args val
|
5484
|
+
result = args val
|
5485
5485
|
|
5486
5486
|
result
|
5487
5487
|
end
|
5488
5488
|
|
5489
5489
|
def _reduce_463(val, _values, result)
|
5490
|
-
result = args
|
5490
|
+
result = args val
|
5491
5491
|
|
5492
5492
|
result
|
5493
5493
|
end
|
5494
5494
|
|
5495
5495
|
def _reduce_464(val, _values, result)
|
5496
|
-
result = args
|
5496
|
+
result = args val
|
5497
5497
|
|
5498
5498
|
result
|
5499
5499
|
end
|
5500
5500
|
|
5501
5501
|
def _reduce_465(val, _values, result)
|
5502
|
-
result = args
|
5502
|
+
result = args val
|
5503
5503
|
|
5504
5504
|
result
|
5505
5505
|
end
|
5506
5506
|
|
5507
5507
|
def _reduce_466(val, _values, result)
|
5508
|
-
result = args
|
5508
|
+
result = args val
|
5509
5509
|
|
5510
5510
|
result
|
5511
5511
|
end
|
5512
5512
|
|
5513
5513
|
def _reduce_467(val, _values, result)
|
5514
|
-
result = args
|
5514
|
+
result = args val
|
5515
5515
|
|
5516
5516
|
result
|
5517
5517
|
end
|
data/lib/ruby18_parser.y
CHANGED
@@ -1203,60 +1203,60 @@ rule
|
|
1203
1203
|
|
1204
1204
|
block_par: mlhs_item
|
1205
1205
|
{
|
1206
|
-
result = s(:array, val[0])
|
1206
|
+
result = s(:array, clean_mlhs(val[0]))
|
1207
1207
|
}
|
1208
1208
|
| block_par tCOMMA mlhs_item
|
1209
1209
|
{
|
1210
|
-
result = list_append val[0], val[2]
|
1210
|
+
result = list_append val[0], clean_mlhs(val[2])
|
1211
1211
|
}
|
1212
1212
|
|
1213
1213
|
block_var: block_par
|
1214
1214
|
{
|
1215
|
-
result =
|
1215
|
+
result = block_var18 val[0], nil, nil
|
1216
1216
|
}
|
1217
1217
|
| block_par tCOMMA
|
1218
1218
|
{
|
1219
|
-
result =
|
1219
|
+
result = block_var18 val[0], nil, nil
|
1220
1220
|
}
|
1221
1221
|
| block_par tCOMMA tAMPER lhs
|
1222
1222
|
{
|
1223
|
-
result =
|
1223
|
+
result = block_var18 val[0], nil, val[3]
|
1224
1224
|
}
|
1225
1225
|
| block_par tCOMMA tSTAR lhs tCOMMA tAMPER lhs
|
1226
1226
|
{
|
1227
|
-
result =
|
1227
|
+
result = block_var18 val[0], val[3], val[6]
|
1228
1228
|
}
|
1229
1229
|
| block_par tCOMMA tSTAR tCOMMA tAMPER lhs
|
1230
1230
|
{
|
1231
|
-
result =
|
1231
|
+
result = block_var18 val[0], s(:splat), val[5]
|
1232
1232
|
}
|
1233
1233
|
| block_par tCOMMA tSTAR lhs
|
1234
1234
|
{
|
1235
|
-
result =
|
1235
|
+
result = block_var18 val[0], val[3], nil
|
1236
1236
|
}
|
1237
1237
|
| block_par tCOMMA tSTAR
|
1238
1238
|
{
|
1239
|
-
result =
|
1239
|
+
result = block_var18 val[0], s(:splat), nil
|
1240
1240
|
}
|
1241
1241
|
| tSTAR lhs tCOMMA tAMPER lhs
|
1242
1242
|
{
|
1243
|
-
result =
|
1243
|
+
result = block_var18 nil, val[1], val[4]
|
1244
1244
|
}
|
1245
1245
|
| tSTAR tCOMMA tAMPER lhs
|
1246
1246
|
{
|
1247
|
-
result =
|
1247
|
+
result = block_var18 nil, s(:splat), val[3]
|
1248
1248
|
}
|
1249
1249
|
| tSTAR lhs
|
1250
1250
|
{
|
1251
|
-
result =
|
1251
|
+
result = block_var18 nil, val[1], nil
|
1252
1252
|
}
|
1253
1253
|
| tSTAR
|
1254
1254
|
{
|
1255
|
-
result =
|
1255
|
+
result = block_var18 nil, s(:splat), nil
|
1256
1256
|
}
|
1257
1257
|
| tAMPER lhs
|
1258
1258
|
{
|
1259
|
-
result =
|
1259
|
+
result = block_var18 nil, nil, val[1]
|
1260
1260
|
}
|
1261
1261
|
;
|
1262
1262
|
|
@@ -1682,39 +1682,39 @@ xstring_contents: none
|
|
1682
1682
|
|
1683
1683
|
f_args: f_arg tCOMMA f_optarg tCOMMA f_rest_arg opt_f_block_arg
|
1684
1684
|
{
|
1685
|
-
result = args val
|
1685
|
+
result = args val
|
1686
1686
|
}
|
1687
1687
|
| f_arg tCOMMA f_optarg opt_f_block_arg
|
1688
1688
|
{
|
1689
|
-
result = args val
|
1689
|
+
result = args val
|
1690
1690
|
}
|
1691
1691
|
| f_arg tCOMMA f_rest_arg opt_f_block_arg
|
1692
1692
|
{
|
1693
|
-
result = args val
|
1693
|
+
result = args val
|
1694
1694
|
}
|
1695
1695
|
| f_arg opt_f_block_arg
|
1696
1696
|
{
|
1697
|
-
result = args val
|
1697
|
+
result = args val
|
1698
1698
|
}
|
1699
1699
|
| f_optarg tCOMMA f_rest_arg opt_f_block_arg
|
1700
1700
|
{
|
1701
|
-
result = args
|
1701
|
+
result = args val
|
1702
1702
|
}
|
1703
1703
|
| f_optarg opt_f_block_arg
|
1704
1704
|
{
|
1705
|
-
result = args
|
1705
|
+
result = args val
|
1706
1706
|
}
|
1707
1707
|
| f_rest_arg opt_f_block_arg
|
1708
1708
|
{
|
1709
|
-
result = args
|
1709
|
+
result = args val
|
1710
1710
|
}
|
1711
1711
|
| f_block_arg
|
1712
1712
|
{
|
1713
|
-
result = args
|
1713
|
+
result = args val
|
1714
1714
|
}
|
1715
1715
|
|
|
1716
1716
|
{
|
1717
|
-
result = args
|
1717
|
+
result = args val
|
1718
1718
|
}
|
1719
1719
|
|
1720
1720
|
f_norm_arg: tCONSTANT
|
data/lib/ruby19_parser.rb
CHANGED
@@ -2417,7 +2417,7 @@ racc_reduce_table = [
|
|
2417
2417
|
2, 151, :_reduce_351,
|
2418
2418
|
1, 226, :_reduce_none,
|
2419
2419
|
1, 226, :_reduce_353,
|
2420
|
-
1, 261, :
|
2420
|
+
1, 261, :_reduce_none,
|
2421
2421
|
3, 261, :_reduce_355,
|
2422
2422
|
1, 264, :_reduce_356,
|
2423
2423
|
3, 264, :_reduce_357,
|
@@ -3429,6 +3429,8 @@ end
|
|
3429
3429
|
|
3430
3430
|
def _reduce_58(val, _values, result)
|
3431
3431
|
result = new_iter nil, val[2], val[4]
|
3432
|
+
result.line = val[1]
|
3433
|
+
|
3432
3434
|
self.env.unextend
|
3433
3435
|
|
3434
3436
|
result
|
@@ -4577,7 +4579,7 @@ def _reduce_297(val, _values, result)
|
|
4577
4579
|
end
|
4578
4580
|
|
4579
4581
|
def _reduce_298(val, _values, result)
|
4580
|
-
result = val[1]
|
4582
|
+
result = val[1] # TODO: fix lineno
|
4581
4583
|
|
4582
4584
|
result
|
4583
4585
|
end
|
@@ -4861,11 +4863,7 @@ def _reduce_353(val, _values, result)
|
|
4861
4863
|
result
|
4862
4864
|
end
|
4863
4865
|
|
4864
|
-
|
4865
|
-
result = assignable val[0]
|
4866
|
-
|
4867
|
-
result
|
4868
|
-
end
|
4866
|
+
# reduce 354 omitted
|
4869
4867
|
|
4870
4868
|
def _reduce_355(val, _values, result)
|
4871
4869
|
result = val[1]
|
@@ -4886,159 +4884,161 @@ def _reduce_357(val, _values, result)
|
|
4886
4884
|
end
|
4887
4885
|
|
4888
4886
|
def _reduce_358(val, _values, result)
|
4889
|
-
|
4887
|
+
args, = val
|
4888
|
+
|
4889
|
+
result = block_var args
|
4890
4890
|
|
4891
4891
|
result
|
4892
4892
|
end
|
4893
4893
|
|
4894
4894
|
def _reduce_359(val, _values, result)
|
4895
|
-
|
4895
|
+
args, _, _, splat = val
|
4896
|
+
|
4897
|
+
result = block_var args, "*#{splat}".to_sym
|
4896
4898
|
|
4897
4899
|
result
|
4898
4900
|
end
|
4899
4901
|
|
4900
4902
|
def _reduce_360(val, _values, result)
|
4901
|
-
|
4903
|
+
args, _, _, splat, _, args2 = val
|
4904
|
+
|
4905
|
+
result = block_var args, "*#{splat}".to_sym, args2
|
4902
4906
|
|
4903
4907
|
result
|
4904
4908
|
end
|
4905
4909
|
|
4906
4910
|
def _reduce_361(val, _values, result)
|
4907
|
-
|
4911
|
+
args, _, _ = val
|
4912
|
+
|
4913
|
+
result = block_var args, :*
|
4908
4914
|
|
4909
4915
|
result
|
4910
4916
|
end
|
4911
4917
|
|
4912
4918
|
def _reduce_362(val, _values, result)
|
4913
|
-
|
4919
|
+
args, _, _, _, args2 = val
|
4920
|
+
|
4921
|
+
result = block_var args, :*, args2
|
4914
4922
|
|
4915
4923
|
result
|
4916
4924
|
end
|
4917
4925
|
|
4918
4926
|
def _reduce_363(val, _values, result)
|
4919
|
-
|
4927
|
+
_, splat = val
|
4928
|
+
|
4929
|
+
result = block_var :"*#{splat}"
|
4920
4930
|
|
4921
4931
|
result
|
4922
4932
|
end
|
4923
4933
|
|
4924
4934
|
def _reduce_364(val, _values, result)
|
4925
|
-
|
4935
|
+
_, splat, _, args = val
|
4936
|
+
|
4937
|
+
result = block_var :"*#{splat}", args
|
4926
4938
|
|
4927
4939
|
result
|
4928
4940
|
end
|
4929
4941
|
|
4930
4942
|
def _reduce_365(val, _values, result)
|
4931
|
-
|
4943
|
+
result = block_var :*
|
4932
4944
|
|
4933
4945
|
result
|
4934
4946
|
end
|
4935
4947
|
|
4936
4948
|
def _reduce_366(val, _values, result)
|
4937
|
-
|
4949
|
+
_, _, args = val
|
4950
|
+
|
4951
|
+
result = block_var :*, args
|
4938
4952
|
|
4939
4953
|
result
|
4940
4954
|
end
|
4941
4955
|
|
4942
4956
|
def _reduce_367(val, _values, result)
|
4943
|
-
result =
|
4957
|
+
result = args val
|
4944
4958
|
|
4945
4959
|
result
|
4946
4960
|
end
|
4947
4961
|
|
4948
4962
|
def _reduce_368(val, _values, result)
|
4949
|
-
result =
|
4963
|
+
result = args val
|
4950
4964
|
|
4951
4965
|
result
|
4952
4966
|
end
|
4953
4967
|
|
4954
4968
|
def _reduce_369(val, _values, result)
|
4955
|
-
|
4956
|
-
|
4957
|
-
result = arg
|
4958
|
-
result.concat opt[1..-1].map { |s| s[1] }
|
4959
|
-
result << "&#{block.last}".to_sym if block
|
4960
|
-
result << opt
|
4969
|
+
result = args val
|
4961
4970
|
|
4962
4971
|
result
|
4963
4972
|
end
|
4964
4973
|
|
4965
4974
|
def _reduce_370(val, _values, result)
|
4966
|
-
result =
|
4975
|
+
result = args val
|
4967
4976
|
|
4968
4977
|
result
|
4969
4978
|
end
|
4970
4979
|
|
4971
4980
|
def _reduce_371(val, _values, result)
|
4972
|
-
result =
|
4981
|
+
result = args val
|
4973
4982
|
|
4974
4983
|
result
|
4975
4984
|
end
|
4976
4985
|
|
4977
4986
|
def _reduce_372(val, _values, result)
|
4978
|
-
result =
|
4987
|
+
result = args val
|
4979
4988
|
|
4980
4989
|
result
|
4981
4990
|
end
|
4982
4991
|
|
4983
4992
|
def _reduce_373(val, _values, result)
|
4984
|
-
result =
|
4993
|
+
result = args val
|
4985
4994
|
|
4986
4995
|
result
|
4987
4996
|
end
|
4988
4997
|
|
4989
4998
|
def _reduce_374(val, _values, result)
|
4990
|
-
result =
|
4999
|
+
result = args val
|
4991
5000
|
|
4992
5001
|
result
|
4993
5002
|
end
|
4994
5003
|
|
4995
5004
|
def _reduce_375(val, _values, result)
|
4996
|
-
result =
|
5005
|
+
result = args val
|
4997
5006
|
|
4998
5007
|
result
|
4999
5008
|
end
|
5000
5009
|
|
5001
5010
|
def _reduce_376(val, _values, result)
|
5002
|
-
result =
|
5011
|
+
result = args val
|
5003
5012
|
|
5004
5013
|
result
|
5005
5014
|
end
|
5006
5015
|
|
5007
5016
|
def _reduce_377(val, _values, result)
|
5008
|
-
|
5009
|
-
|
5010
|
-
result = s(:args)
|
5011
|
-
result.concat opt[1..-1].map { |s| s[1] }
|
5012
|
-
result << "&#{block.last}".to_sym if block
|
5013
|
-
result << opt
|
5017
|
+
result = args val
|
5014
5018
|
|
5015
5019
|
result
|
5016
5020
|
end
|
5017
5021
|
|
5018
5022
|
def _reduce_378(val, _values, result)
|
5019
|
-
result =
|
5023
|
+
result = args val
|
5020
5024
|
|
5021
5025
|
result
|
5022
5026
|
end
|
5023
5027
|
|
5024
5028
|
def _reduce_379(val, _values, result)
|
5025
|
-
result =
|
5029
|
+
result = args val
|
5026
5030
|
|
5027
5031
|
result
|
5028
5032
|
end
|
5029
5033
|
|
5030
5034
|
def _reduce_380(val, _values, result)
|
5031
|
-
|
5032
|
-
|
5033
|
-
result = args
|
5034
|
-
result[1,0] = rest
|
5035
|
-
result << "&#{block.last}".to_sym if block
|
5035
|
+
result = args val
|
5036
5036
|
|
5037
5037
|
result
|
5038
5038
|
end
|
5039
5039
|
|
5040
5040
|
def _reduce_381(val, _values, result)
|
5041
|
-
result =
|
5041
|
+
result = args val
|
5042
5042
|
|
5043
5043
|
result
|
5044
5044
|
end
|
@@ -5093,24 +5093,19 @@ end
|
|
5093
5093
|
# reduce 392 omitted
|
5094
5094
|
|
5095
5095
|
def _reduce_393(val, _values, result)
|
5096
|
-
|
5097
|
-
|
5098
|
-
|
5099
|
-
when 2
|
5100
|
-
args = s(:lasgn, val[0][1])
|
5101
|
-
else
|
5102
|
-
vars = val[0][1..-1].map { |name| s(:lasgn, name) }
|
5103
|
-
args = s(:masgn, s(:array, *vars))
|
5104
|
-
end
|
5096
|
+
args, body = val
|
5097
|
+
|
5098
|
+
args = 0 if args == s(:args)
|
5105
5099
|
|
5106
5100
|
call = new_call nil, :lambda
|
5107
|
-
result =
|
5101
|
+
result = new_iter call, args, body
|
5108
5102
|
|
5109
5103
|
result
|
5110
5104
|
end
|
5111
5105
|
|
5112
5106
|
def _reduce_394(val, _values, result)
|
5113
5107
|
result = val[1]
|
5108
|
+
raise "not yet: #{val.inspect}" if val[2]
|
5114
5109
|
|
5115
5110
|
result
|
5116
5111
|
end
|
@@ -5147,9 +5142,9 @@ def _reduce_399(val, _values, result)
|
|
5147
5142
|
end
|
5148
5143
|
|
5149
5144
|
def _reduce_400(val, _values, result)
|
5150
|
-
|
5145
|
+
args = val[2]
|
5151
5146
|
body = val[4]
|
5152
|
-
result = new_iter nil,
|
5147
|
+
result = new_iter nil, args, body
|
5153
5148
|
result.line = val[1]
|
5154
5149
|
|
5155
5150
|
self.env.unextend
|
@@ -5257,12 +5252,12 @@ def _reduce_415(val, _values, result)
|
|
5257
5252
|
end
|
5258
5253
|
|
5259
5254
|
def _reduce_416(val, _values, result)
|
5260
|
-
|
5261
|
-
|
5262
|
-
body = val[4]
|
5255
|
+
_, line, args, _, body, _ = val
|
5256
|
+
|
5263
5257
|
result = new_iter nil, args, body
|
5258
|
+
result.line = line
|
5259
|
+
|
5264
5260
|
self.env.unextend
|
5265
|
-
result.line = val[1]
|
5266
5261
|
|
5267
5262
|
result
|
5268
5263
|
end
|
@@ -5281,11 +5276,12 @@ def _reduce_418(val, _values, result)
|
|
5281
5276
|
end
|
5282
5277
|
|
5283
5278
|
def _reduce_419(val, _values, result)
|
5284
|
-
args = val
|
5285
|
-
|
5279
|
+
_, line, args, _, body, _ = val
|
5280
|
+
|
5286
5281
|
result = new_iter nil, args, body
|
5282
|
+
result.line = line
|
5283
|
+
|
5287
5284
|
self.env.unextend
|
5288
|
-
result.line = val[1]
|
5289
5285
|
|
5290
5286
|
result
|
5291
5287
|
end
|
@@ -5309,7 +5305,7 @@ end
|
|
5309
5305
|
# reduce 423 omitted
|
5310
5306
|
|
5311
5307
|
def _reduce_424(val, _values, result)
|
5312
|
-
klasses, var, body, rest = val
|
5308
|
+
_, klasses, var, _, body, rest = val
|
5313
5309
|
|
5314
5310
|
klasses ||= s(:array)
|
5315
5311
|
klasses << node_assign(var, s(:gvar, :"$!")) if var
|
@@ -5345,11 +5341,9 @@ end
|
|
5345
5341
|
# reduce 430 omitted
|
5346
5342
|
|
5347
5343
|
def _reduce_431(val, _values, result)
|
5348
|
-
|
5349
|
-
|
5350
|
-
|
5351
|
-
result = s(:nil)
|
5352
|
-
end
|
5344
|
+
_, body = val
|
5345
|
+
|
5346
|
+
result = body || s(:nil)
|
5353
5347
|
|
5354
5348
|
result
|
5355
5349
|
end
|
@@ -5547,7 +5541,7 @@ def _reduce_463(val, _values, result)
|
|
5547
5541
|
when nil then
|
5548
5542
|
result = s(:evstr)
|
5549
5543
|
else
|
5550
|
-
raise "unknown
|
5544
|
+
raise "unknown string body: #{val[2].inspect}"
|
5551
5545
|
end
|
5552
5546
|
|
5553
5547
|
result
|
@@ -5667,7 +5661,13 @@ def _reduce_489(val, _values, result)
|
|
5667
5661
|
end
|
5668
5662
|
|
5669
5663
|
def _reduce_490(val, _values, result)
|
5670
|
-
|
5664
|
+
result =
|
5665
|
+
if defined? Encoding then
|
5666
|
+
s(:const, Encoding::UTF_8)
|
5667
|
+
else
|
5668
|
+
s(:str, "Unsupported!")
|
5669
|
+
end
|
5670
|
+
|
5671
5671
|
result
|
5672
5672
|
end
|
5673
5673
|
|
@@ -5747,91 +5747,91 @@ def _reduce_502(val, _values, result)
|
|
5747
5747
|
end
|
5748
5748
|
|
5749
5749
|
def _reduce_503(val, _values, result)
|
5750
|
-
result =
|
5750
|
+
result = args val
|
5751
5751
|
|
5752
5752
|
result
|
5753
5753
|
end
|
5754
5754
|
|
5755
5755
|
def _reduce_504(val, _values, result)
|
5756
|
-
result =
|
5756
|
+
result = args val
|
5757
5757
|
|
5758
5758
|
result
|
5759
5759
|
end
|
5760
5760
|
|
5761
5761
|
def _reduce_505(val, _values, result)
|
5762
|
-
result =
|
5762
|
+
result = args val
|
5763
5763
|
|
5764
5764
|
result
|
5765
5765
|
end
|
5766
5766
|
|
5767
5767
|
def _reduce_506(val, _values, result)
|
5768
|
-
result =
|
5768
|
+
result = args val
|
5769
5769
|
|
5770
5770
|
result
|
5771
5771
|
end
|
5772
5772
|
|
5773
5773
|
def _reduce_507(val, _values, result)
|
5774
|
-
result =
|
5774
|
+
result = args val
|
5775
5775
|
|
5776
5776
|
result
|
5777
5777
|
end
|
5778
5778
|
|
5779
5779
|
def _reduce_508(val, _values, result)
|
5780
|
-
result =
|
5780
|
+
result = args val
|
5781
5781
|
|
5782
5782
|
result
|
5783
5783
|
end
|
5784
5784
|
|
5785
5785
|
def _reduce_509(val, _values, result)
|
5786
|
-
result =
|
5786
|
+
result = args val
|
5787
5787
|
|
5788
5788
|
result
|
5789
5789
|
end
|
5790
5790
|
|
5791
5791
|
def _reduce_510(val, _values, result)
|
5792
|
-
result =
|
5792
|
+
result = args val
|
5793
5793
|
|
5794
5794
|
result
|
5795
5795
|
end
|
5796
5796
|
|
5797
5797
|
def _reduce_511(val, _values, result)
|
5798
|
-
result =
|
5798
|
+
result = args val
|
5799
5799
|
|
5800
5800
|
result
|
5801
5801
|
end
|
5802
5802
|
|
5803
5803
|
def _reduce_512(val, _values, result)
|
5804
|
-
result =
|
5804
|
+
result = args val
|
5805
5805
|
|
5806
5806
|
result
|
5807
5807
|
end
|
5808
5808
|
|
5809
5809
|
def _reduce_513(val, _values, result)
|
5810
|
-
result =
|
5810
|
+
result = args val
|
5811
5811
|
|
5812
5812
|
result
|
5813
5813
|
end
|
5814
5814
|
|
5815
5815
|
def _reduce_514(val, _values, result)
|
5816
|
-
result =
|
5816
|
+
result = args val
|
5817
5817
|
|
5818
5818
|
result
|
5819
5819
|
end
|
5820
5820
|
|
5821
5821
|
def _reduce_515(val, _values, result)
|
5822
|
-
result =
|
5822
|
+
result = args val
|
5823
5823
|
|
5824
5824
|
result
|
5825
5825
|
end
|
5826
5826
|
|
5827
5827
|
def _reduce_516(val, _values, result)
|
5828
|
-
result =
|
5828
|
+
result = args val
|
5829
5829
|
|
5830
5830
|
result
|
5831
5831
|
end
|
5832
5832
|
|
5833
5833
|
def _reduce_517(val, _values, result)
|
5834
|
-
result =
|
5834
|
+
result = args val
|
5835
5835
|
|
5836
5836
|
result
|
5837
5837
|
end
|
@@ -5883,7 +5883,7 @@ def _reduce_526(val, _values, result)
|
|
5883
5883
|
case val[0]
|
5884
5884
|
when Symbol then
|
5885
5885
|
result = s(:args)
|
5886
|
-
result << val[0]
|
5886
|
+
result << val[0]
|
5887
5887
|
when Sexp then
|
5888
5888
|
result = val[0]
|
5889
5889
|
else
|
@@ -5894,8 +5894,15 @@ def _reduce_526(val, _values, result)
|
|
5894
5894
|
end
|
5895
5895
|
|
5896
5896
|
def _reduce_527(val, _values, result)
|
5897
|
-
|
5898
|
-
|
5897
|
+
list, _, item = val
|
5898
|
+
|
5899
|
+
if list.sexp_type == :args then
|
5900
|
+
result = list
|
5901
|
+
else
|
5902
|
+
result = s(:args, list)
|
5903
|
+
end
|
5904
|
+
|
5905
|
+
result << item
|
5899
5906
|
|
5900
5907
|
result
|
5901
5908
|
end
|
@@ -5967,7 +5974,7 @@ def _reduce_540(val, _values, result)
|
|
5967
5974
|
identifier = val[1].to_sym
|
5968
5975
|
|
5969
5976
|
self.env[identifier] = :lvar
|
5970
|
-
result =
|
5977
|
+
result = "&#{identifier}".to_sym
|
5971
5978
|
|
5972
5979
|
result
|
5973
5980
|
end
|