ruby_parser 3.0.0.a9 → 3.0.0.a10
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.
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
|