ruby_parser 3.8.1 → 3.8.2
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.tar.gz.sig +2 -2
- data/History.txt +7 -0
- data/lib/ruby18_parser.rb +1 -1
- data/lib/ruby19_parser.rb +1 -1
- data/lib/ruby20_parser.rb +2365 -2360
- data/lib/ruby20_parser.y +33 -24
- data/lib/ruby21_parser.rb +2480 -2478
- data/lib/ruby21_parser.y +33 -24
- data/lib/ruby22_parser.rb +2405 -2398
- data/lib/ruby22_parser.y +33 -24
- data/lib/ruby23_parser.rb +3198 -3286
- data/lib/ruby23_parser.y +34 -55
- data/lib/ruby_parser.yy +36 -69
- data/lib/ruby_parser_extras.rb +43 -3
- data/test/test_ruby_parser.rb +42 -1
- metadata +4 -18
- metadata.gz.sig +0 -0
data/test/test_ruby_parser.rb
CHANGED
@@ -1401,6 +1401,19 @@ module TestRubyParserShared
|
|
1401
1401
|
assert_parse rb, pt
|
1402
1402
|
end
|
1403
1403
|
|
1404
|
+
def test_qwords_line_breaks
|
1405
|
+
skip "not yet"
|
1406
|
+
|
1407
|
+
rb = "%w(\na\nb\n)\n1"
|
1408
|
+
pt = s(:block,
|
1409
|
+
s(:array,
|
1410
|
+
s(:str, "a").line(2),
|
1411
|
+
s(:str, "b").line(3)).line(1),
|
1412
|
+
s(:lit, 1).line(5))
|
1413
|
+
|
1414
|
+
assert_parse rb, pt
|
1415
|
+
end
|
1416
|
+
|
1404
1417
|
def test_qWords_space
|
1405
1418
|
rb = "%W( )"
|
1406
1419
|
pt = s(:array)
|
@@ -2196,6 +2209,13 @@ module TestRubyParserShared20to22
|
|
2196
2209
|
assert_parse rb, pt
|
2197
2210
|
end
|
2198
2211
|
|
2212
|
+
def test_dstr_lex_state
|
2213
|
+
rb = '"#{p:a}"'
|
2214
|
+
pt = s(:dstr, "", s(:evstr, s(:call, nil, :p, s(:lit, :a))))
|
2215
|
+
|
2216
|
+
assert_parse rb, pt
|
2217
|
+
end
|
2218
|
+
|
2199
2219
|
def test_call_arg_kwsplat
|
2200
2220
|
rb = "a(b, **1)"
|
2201
2221
|
pt = s(:call, nil, :a, s(:call, nil, :b), s(:hash, s(:kwsplat, s(:lit, 1))))
|
@@ -3429,6 +3449,13 @@ class TestRuby23Parser < RubyParserTestCase
|
|
3429
3449
|
assert_parse rb, pt
|
3430
3450
|
end
|
3431
3451
|
|
3452
|
+
def test_safe_call_rhs_newline
|
3453
|
+
rb = "c = a&.b\n"
|
3454
|
+
pt = s(:lasgn, :c, s(:safe_call, s(:call, nil, :a), :b))
|
3455
|
+
|
3456
|
+
assert_parse rb, pt
|
3457
|
+
end
|
3458
|
+
|
3432
3459
|
def test_safe_calls
|
3433
3460
|
rb = "a&.b&.c(1)"
|
3434
3461
|
pt = s(:safe_call, s(:safe_call, s(:call, nil, :a), :b), :c, s(:lit, 1))
|
@@ -3459,7 +3486,21 @@ class TestRuby23Parser < RubyParserTestCase
|
|
3459
3486
|
|
3460
3487
|
def test_safe_call_operator
|
3461
3488
|
rb = "a&.> 1"
|
3462
|
-
pt = s(:safe_call, s(:call, nil, :a), :>, s(:lit, 1))
|
3489
|
+
pt = s(:safe_call, s(:call, nil, :a), :>, s(:lit, 1)).line(1)
|
3490
|
+
|
3491
|
+
assert_parse rb, pt
|
3492
|
+
end
|
3493
|
+
|
3494
|
+
def test_safe_op_asgn
|
3495
|
+
rb = "a&.b += x 1\n"
|
3496
|
+
pt = s(:safe_op_asgn, s(:call, nil, :a), s(:call, nil, :x, s(:lit, 1)), :b, :+).line(1)
|
3497
|
+
|
3498
|
+
assert_parse rb, pt
|
3499
|
+
end
|
3500
|
+
|
3501
|
+
def test_safe_op_asgn2
|
3502
|
+
rb = "a&.b ||=\nx;"
|
3503
|
+
pt = s(:safe_op_asgn2, s(:call, nil, :a), :b=, :"||", s(:call, nil, :x)).line(1)
|
3463
3504
|
|
3464
3505
|
assert_parse rb, pt
|
3465
3506
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby_parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.8.
|
4
|
+
version: 3.8.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryan Davis
|
@@ -29,7 +29,7 @@ cert_chain:
|
|
29
29
|
qx3h45R1CAsObX0SQDIT+rRbQrtKz1GHIZTOFYvEJjUY1XmRTZupD3CJ8Q7sDqSy
|
30
30
|
NLq5jm1fq6Y9Uolu3RJbmycf
|
31
31
|
-----END CERTIFICATE-----
|
32
|
-
date: 2016-
|
32
|
+
date: 2016-05-05 00:00:00.000000000 Z
|
33
33
|
dependencies:
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: sexp_processor
|
@@ -45,20 +45,6 @@ dependencies:
|
|
45
45
|
- - ~>
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '4.1'
|
48
|
-
- !ruby/object:Gem::Dependency
|
49
|
-
name: minitest
|
50
|
-
requirement: !ruby/object:Gem::Requirement
|
51
|
-
requirements:
|
52
|
-
- - ~>
|
53
|
-
- !ruby/object:Gem::Version
|
54
|
-
version: '5.8'
|
55
|
-
type: :development
|
56
|
-
prerelease: false
|
57
|
-
version_requirements: !ruby/object:Gem::Requirement
|
58
|
-
requirements:
|
59
|
-
- - ~>
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '5.8'
|
62
48
|
- !ruby/object:Gem::Dependency
|
63
49
|
name: rdoc
|
64
50
|
requirement: !ruby/object:Gem::Requirement
|
@@ -121,14 +107,14 @@ dependencies:
|
|
121
107
|
requirements:
|
122
108
|
- - ~>
|
123
109
|
- !ruby/object:Gem::Version
|
124
|
-
version: '3.
|
110
|
+
version: '3.15'
|
125
111
|
type: :development
|
126
112
|
prerelease: false
|
127
113
|
version_requirements: !ruby/object:Gem::Requirement
|
128
114
|
requirements:
|
129
115
|
- - ~>
|
130
116
|
- !ruby/object:Gem::Version
|
131
|
-
version: '3.
|
117
|
+
version: '3.15'
|
132
118
|
description: |-
|
133
119
|
ruby_parser (RP) is a ruby parser written in pure ruby (utilizing
|
134
120
|
racc--which does by default use a C extension). RP's output is
|
metadata.gz.sig
CHANGED
Binary file
|