ruby_parser 3.20.3 → 3.21.1
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 +38 -0
- data/Manifest.txt +14 -24
- data/README.rdoc +3 -3
- data/Rakefile +113 -115
- data/compare/normalize.rb +2 -0
- data/lib/ruby_lexer.rb +9 -16
- data/lib/ruby_lexer.rex.rb +1 -2
- data/lib/ruby_parser.rb +15 -13
- data/lib/{ruby_parser.yy → ruby_parser2.yy} +3 -10
- data/lib/{ruby20_parser.rb → ruby_parser20.rb} +9 -12
- data/lib/{ruby21_parser.rb → ruby_parser21.rb} +9 -12
- data/lib/{ruby22_parser.rb → ruby_parser22.rb} +9 -12
- data/lib/{ruby23_parser.rb → ruby_parser23.rb} +9 -12
- data/lib/{ruby24_parser.rb → ruby_parser24.rb} +9 -12
- data/lib/{ruby25_parser.rb → ruby_parser25.rb} +9 -12
- data/lib/{ruby26_parser.rb → ruby_parser26.rb} +9 -12
- data/lib/{ruby27_parser.rb → ruby_parser27.rb} +9 -12
- data/lib/{ruby3_parser.yy → ruby_parser3.yy} +7 -33
- data/lib/{ruby30_parser.rb → ruby_parser30.rb} +11 -35
- data/lib/{ruby31_parser.rb → ruby_parser31.rb} +11 -35
- data/lib/{ruby32_parser.rb → ruby_parser32.rb} +11 -35
- data/lib/ruby_parser33.rb +13577 -0
- data/lib/ruby_parser_extras.rb +35 -17
- data/test/test_ruby_lexer.rb +5 -5
- data/test/test_ruby_parser.rb +22 -20
- data.tar.gz.sig +0 -0
- metadata +41 -51
- metadata.gz.sig +0 -0
- data/lib/ruby20_parser.y +0 -2707
- data/lib/ruby21_parser.y +0 -2724
- data/lib/ruby22_parser.y +0 -2735
- data/lib/ruby23_parser.y +0 -2737
- data/lib/ruby24_parser.y +0 -2745
- data/lib/ruby25_parser.y +0 -2745
- data/lib/ruby26_parser.y +0 -2760
- data/lib/ruby27_parser.y +0 -3360
- data/lib/ruby30_parser.y +0 -3508
- data/lib/ruby31_parser.y +0 -3542
- data/lib/ruby32_parser.y +0 -3543
data/lib/ruby_parser_extras.rb
CHANGED
@@ -30,11 +30,11 @@ class Sexp
|
|
30
30
|
end
|
31
31
|
|
32
32
|
module RubyParserStuff
|
33
|
-
VERSION = "3.
|
33
|
+
VERSION = "3.21.1"
|
34
34
|
|
35
35
|
attr_accessor :lexer, :in_def, :in_single, :file, :in_argdef
|
36
36
|
attr_accessor :in_kwarg
|
37
|
-
attr_reader :env
|
37
|
+
attr_reader :env
|
38
38
|
|
39
39
|
##
|
40
40
|
# Canonicalize conditionals. Eg:
|
@@ -92,6 +92,7 @@ module RubyParserStuff
|
|
92
92
|
[k, true]
|
93
93
|
}.to_h
|
94
94
|
|
95
|
+
# TODO: remove
|
95
96
|
has_enc = "".respond_to? :encoding
|
96
97
|
|
97
98
|
# This is in sorted order of occurrence according to
|
@@ -125,7 +126,6 @@ module RubyParserStuff
|
|
125
126
|
self.in_argdef = false
|
126
127
|
|
127
128
|
@env = RubyParserStuff::Environment.new
|
128
|
-
@comments = []
|
129
129
|
|
130
130
|
@canonicalize_conditions = true
|
131
131
|
|
@@ -567,7 +567,7 @@ module RubyParserStuff
|
|
567
567
|
|
568
568
|
def handle_encoding str
|
569
569
|
str = str.dup
|
570
|
-
has_enc = str.respond_to? :encoding
|
570
|
+
has_enc = str.respond_to? :encoding # TODO: remove
|
571
571
|
encoding = nil
|
572
572
|
|
573
573
|
header = str.each_line.first(2)
|
@@ -664,6 +664,7 @@ module RubyParserStuff
|
|
664
664
|
end
|
665
665
|
|
666
666
|
if head.size == 2 and tail.size > 1 and tail[1].sexp_type == :str then
|
667
|
+
head[-1] = head[-1].dup if head[-1].frozen?
|
667
668
|
head.last << tail[1].last
|
668
669
|
head.sexp_type = :str if head.size == 2 # HACK ?
|
669
670
|
else
|
@@ -929,7 +930,7 @@ module RubyParserStuff
|
|
929
930
|
end
|
930
931
|
|
931
932
|
def new_class val
|
932
|
-
(_, line), path, superclass, _, body, (_, line_max) = val
|
933
|
+
(_, line, comment), path, superclass, _, body, (_, line_max) = val
|
933
934
|
|
934
935
|
path = path.first if path.instance_of? Array
|
935
936
|
|
@@ -945,7 +946,7 @@ module RubyParserStuff
|
|
945
946
|
|
946
947
|
result.line = line
|
947
948
|
result.line_max = line_max
|
948
|
-
result.comments =
|
949
|
+
result.comments = comment if comment
|
949
950
|
result
|
950
951
|
end
|
951
952
|
|
@@ -973,7 +974,11 @@ module RubyParserStuff
|
|
973
974
|
end
|
974
975
|
|
975
976
|
def new_defn val
|
976
|
-
|
977
|
+
if val.size == 4 then
|
978
|
+
((_, line, comment), (name, _line, in_def)), args, body, (_, line_max) = val
|
979
|
+
else
|
980
|
+
(_, line, comment), (name, line), in_def, args, body, (_, line_max) = val
|
981
|
+
end
|
977
982
|
|
978
983
|
body ||= s(:nil).line line
|
979
984
|
|
@@ -988,13 +993,14 @@ module RubyParserStuff
|
|
988
993
|
result.push body
|
989
994
|
end
|
990
995
|
|
991
|
-
result.comments =
|
996
|
+
result.comments = comment if comment
|
992
997
|
|
993
998
|
[result, in_def]
|
994
999
|
end
|
995
1000
|
|
996
1001
|
def new_endless_defn val
|
997
|
-
|
1002
|
+
# not available in 2.x so we don't need to check size
|
1003
|
+
((_, line, comment), (name, _, in_def)), args, _, body, _, resbody = val
|
998
1004
|
|
999
1005
|
result =
|
1000
1006
|
if resbody then
|
@@ -1009,13 +1015,15 @@ module RubyParserStuff
|
|
1009
1015
|
local_pop in_def
|
1010
1016
|
endless_method_name result
|
1011
1017
|
|
1012
|
-
result.comments =
|
1018
|
+
result.comments = comment if comment
|
1013
1019
|
|
1014
1020
|
result
|
1015
1021
|
end
|
1016
1022
|
|
1017
1023
|
def new_endless_defs val
|
1018
|
-
|
1024
|
+
# not available in 2.x so we don't need to check size
|
1025
|
+
((_, line, comment), recv, _, _, (name, line, in_def)), \
|
1026
|
+
args, _, body, _, resbody = val
|
1019
1027
|
|
1020
1028
|
result =
|
1021
1029
|
if resbody then
|
@@ -1031,13 +1039,19 @@ module RubyParserStuff
|
|
1031
1039
|
local_pop in_def
|
1032
1040
|
endless_method_name result
|
1033
1041
|
|
1034
|
-
result.comments =
|
1042
|
+
result.comments = comment if comment
|
1035
1043
|
|
1036
1044
|
result
|
1037
1045
|
end
|
1038
1046
|
|
1039
1047
|
def new_defs val
|
1040
|
-
|
1048
|
+
if val.size == 4 then
|
1049
|
+
((_, line, comment), recv, _, _, (name, line, in_def)), \
|
1050
|
+
args, body, (_, line_max) = val
|
1051
|
+
else
|
1052
|
+
(_, line, comment), recv, (name, _), in_def, \
|
1053
|
+
args, body, (_, line_max) = val
|
1054
|
+
end
|
1041
1055
|
|
1042
1056
|
body ||= s(:nil).line line
|
1043
1057
|
|
@@ -1055,7 +1069,7 @@ module RubyParserStuff
|
|
1055
1069
|
result.push body
|
1056
1070
|
end
|
1057
1071
|
|
1058
|
-
result.comments =
|
1072
|
+
result.comments = comment if comment
|
1059
1073
|
|
1060
1074
|
[result, in_def]
|
1061
1075
|
end
|
@@ -1209,7 +1223,7 @@ module RubyParserStuff
|
|
1209
1223
|
end
|
1210
1224
|
|
1211
1225
|
def new_module val
|
1212
|
-
(_, line_min), path, _, body, (_, line_max) = val
|
1226
|
+
(_, line_min, comment), path, _, body, (_, line_max) = val
|
1213
1227
|
|
1214
1228
|
path = path.first if path.instance_of? Array
|
1215
1229
|
|
@@ -1224,7 +1238,7 @@ module RubyParserStuff
|
|
1224
1238
|
end
|
1225
1239
|
end
|
1226
1240
|
|
1227
|
-
result.comments =
|
1241
|
+
result.comments = comment if comment
|
1228
1242
|
result
|
1229
1243
|
end
|
1230
1244
|
|
@@ -1518,11 +1532,16 @@ module RubyParserStuff
|
|
1518
1532
|
end
|
1519
1533
|
end
|
1520
1534
|
|
1535
|
+
KEEP_COMMENT_TOKENS = [:kCLASS, :kMODULE, :kDEF, :tNL]
|
1536
|
+
|
1521
1537
|
def next_token
|
1522
1538
|
token = self.lexer.next_token
|
1523
1539
|
|
1524
1540
|
if token and token.first != RubyLexer::EOF then
|
1525
1541
|
self.last_token_type = token
|
1542
|
+
|
1543
|
+
self.lexer.comment = nil unless KEEP_COMMENT_TOKENS.include? token.first
|
1544
|
+
|
1526
1545
|
return token
|
1527
1546
|
elsif !token
|
1528
1547
|
return self.lexer.next_token
|
@@ -1582,7 +1601,6 @@ module RubyParserStuff
|
|
1582
1601
|
self.in_def = false
|
1583
1602
|
self.in_single = 0
|
1584
1603
|
self.env.reset
|
1585
|
-
self.comments.clear
|
1586
1604
|
self.last_token_type = nil
|
1587
1605
|
end
|
1588
1606
|
|
data/test/test_ruby_lexer.rb
CHANGED
@@ -584,7 +584,7 @@ class TestRubyLexer < Minitest::Test
|
|
584
584
|
:tNL, nil, EXPR_BEG,
|
585
585
|
:tINTEGER, 2, EXPR_NUM)
|
586
586
|
|
587
|
-
assert_equal "# one\n# two\n", @lex.
|
587
|
+
assert_equal "# one\n# two\n", @lex.comment
|
588
588
|
end
|
589
589
|
|
590
590
|
def test_yylex_comment_begin
|
@@ -592,13 +592,13 @@ class TestRubyLexer < Minitest::Test
|
|
592
592
|
nil,
|
593
593
|
:tINTEGER, 42, EXPR_NUM)
|
594
594
|
|
595
|
-
assert_equal "=begin\nblah\nblah\n=end\n", @lex.
|
595
|
+
assert_equal "=begin\nblah\nblah\n=end\n", @lex.comment
|
596
596
|
end
|
597
597
|
|
598
598
|
def test_yylex_comment_begin_bad
|
599
599
|
refute_lex("=begin\nblah\nblah\n")
|
600
600
|
|
601
|
-
|
601
|
+
assert_nil @lex.comment
|
602
602
|
end
|
603
603
|
|
604
604
|
def test_yylex_comment_begin_not_comment
|
@@ -617,13 +617,13 @@ class TestRubyLexer < Minitest::Test
|
|
617
617
|
def test_yylex_comment_begin_space
|
618
618
|
assert_lex3("=begin blah\nblah\n=end\n", nil)
|
619
619
|
|
620
|
-
assert_equal "=begin blah\nblah\n=end\n", @lex.
|
620
|
+
assert_equal "=begin blah\nblah\n=end\n", @lex.comment
|
621
621
|
end
|
622
622
|
|
623
623
|
def test_yylex_comment_end_space_and_text
|
624
624
|
assert_lex3("=begin blah\nblah\n=end blab\n", nil)
|
625
625
|
|
626
|
-
assert_equal "=begin blah\nblah\n=end blab\n", @lex.
|
626
|
+
assert_equal "=begin blah\nblah\n=end blab\n", @lex.comment
|
627
627
|
end
|
628
628
|
|
629
629
|
def test_yylex_comment_eos
|
data/test/test_ruby_parser.rb
CHANGED
@@ -500,7 +500,7 @@ module TestRubyParserShared
|
|
500
500
|
exp = rb.strip + "\n"
|
501
501
|
|
502
502
|
refute_parse rb
|
503
|
-
assert_equal exp, processor.lexer.
|
503
|
+
assert_equal exp, processor.lexer.comment
|
504
504
|
end
|
505
505
|
|
506
506
|
def test_bug_cond_pct
|
@@ -1496,7 +1496,7 @@ module TestRubyParserShared
|
|
1496
1496
|
end
|
1497
1497
|
|
1498
1498
|
def test_magic_encoding_comment
|
1499
|
-
rb = "# encoding: utf-8\nclass ExampleUTF8ClassNameVarietà; def self.è; così = :però; end\nend\n"
|
1499
|
+
rb = +"# encoding: utf-8\nclass ExampleUTF8ClassNameVarietà; def self.è; così = :però; end\nend\n"
|
1500
1500
|
|
1501
1501
|
rb.force_encoding "ASCII-8BIT" if rb.respond_to? :force_encoding
|
1502
1502
|
|
@@ -1722,11 +1722,10 @@ module TestRubyParserShared
|
|
1722
1722
|
|
1723
1723
|
assert_equal "# class comment\n", sexp.comments
|
1724
1724
|
act = sexp.find_nodes(:defn).map(&:comments)
|
1725
|
-
exp = [
|
1725
|
+
exp = [nil, "# Returns a list of things\n"]
|
1726
1726
|
|
1727
1727
|
assert_equal exp, act
|
1728
|
-
|
1729
|
-
assert_equal "", processor.lexer.comments
|
1728
|
+
assert_nil processor.lexer.comment
|
1730
1729
|
end
|
1731
1730
|
|
1732
1731
|
def test_parse_if_not_canonical
|
@@ -5672,6 +5671,10 @@ module TestRubyParserShared32Plus
|
|
5672
5671
|
end
|
5673
5672
|
end
|
5674
5673
|
|
5674
|
+
module TestRubyParserShared33Plus
|
5675
|
+
include TestRubyParserShared32Plus
|
5676
|
+
end
|
5677
|
+
|
5675
5678
|
class Minitest::Test
|
5676
5679
|
def skip s = "blah"
|
5677
5680
|
warn "ignoring skip for %s: %s" % [name, s]
|
@@ -5693,28 +5696,17 @@ class TestRubyParser < Minitest::Test
|
|
5693
5696
|
pt = s(:call, s(:call, nil, :a), :call)
|
5694
5697
|
|
5695
5698
|
assert_equal pt, processor.parse(rb)
|
5696
|
-
|
5697
|
-
# bad syntax
|
5698
|
-
e = assert_raises Racc::ParseError do
|
5699
|
-
capture_io do
|
5700
|
-
processor.parse "a.("
|
5701
|
-
end
|
5702
|
-
end
|
5703
|
-
|
5704
|
-
assert_includes e.message, 'parse error on value "$" ($end)'
|
5705
5699
|
end
|
5706
5700
|
|
5707
|
-
def
|
5701
|
+
def test_parse_error
|
5708
5702
|
processor = RubyParser.new
|
5709
5703
|
|
5704
|
+
# bad syntax
|
5710
5705
|
e = assert_raises Racc::ParseError do
|
5711
|
-
|
5712
|
-
processor.parse "a -> () {"
|
5713
|
-
end
|
5706
|
+
processor.parse "a.("
|
5714
5707
|
end
|
5715
5708
|
|
5716
|
-
|
5717
|
-
assert_includes e.message, 'parse error on value "$" ($end)'
|
5709
|
+
assert_match(/parse error on value \S+ ..end./, e.message)
|
5718
5710
|
end
|
5719
5711
|
end
|
5720
5712
|
|
@@ -6031,6 +6023,16 @@ class TestRubyParserV32 < RubyParserTestCase
|
|
6031
6023
|
end
|
6032
6024
|
end
|
6033
6025
|
|
6026
|
+
class TestRubyParserV33 < RubyParserTestCase
|
6027
|
+
include TestRubyParserShared33Plus
|
6028
|
+
|
6029
|
+
def setup
|
6030
|
+
super
|
6031
|
+
|
6032
|
+
self.processor = RubyParser::V33.new
|
6033
|
+
end
|
6034
|
+
end
|
6035
|
+
|
6034
6036
|
RubyParser::VERSIONS.each do |klass|
|
6035
6037
|
v = klass.version
|
6036
6038
|
describe "block args arity #{v}" do
|
data.tar.gz.sig
CHANGED
Binary file
|
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.
|
4
|
+
version: 3.21.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Ryan Davis
|
@@ -10,9 +10,9 @@ bindir: bin
|
|
10
10
|
cert_chain:
|
11
11
|
- |
|
12
12
|
-----BEGIN CERTIFICATE-----
|
13
|
-
|
13
|
+
MIIDPjCCAiagAwIBAgIBCDANBgkqhkiG9w0BAQsFADBFMRMwEQYDVQQDDApyeWFu
|
14
14
|
ZC1ydWJ5MRkwFwYKCZImiZPyLGQBGRYJemVuc3BpZGVyMRMwEQYKCZImiZPyLGQB
|
15
|
-
|
15
|
+
GRYDY29tMB4XDTI0MDEwMjIxMjEyM1oXDTI1MDEwMTIxMjEyM1owRTETMBEGA1UE
|
16
16
|
AwwKcnlhbmQtcnVieTEZMBcGCgmSJomT8ixkARkWCXplbnNwaWRlcjETMBEGCgmS
|
17
17
|
JomT8ixkARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALda
|
18
18
|
b9DCgK+627gPJkB6XfjZ1itoOQvpqH1EXScSaba9/S2VF22VYQbXU1xQXL/WzCkx
|
@@ -22,14 +22,14 @@ cert_chain:
|
|
22
22
|
qhtV7HJxNKuPj/JFH0D2cswvzznE/a5FOYO68g+YCuFi5L8wZuuM8zzdwjrWHqSV
|
23
23
|
gBEfoTEGr7Zii72cx+sCAwEAAaM5MDcwCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAw
|
24
24
|
HQYDVR0OBBYEFEfFe9md/r/tj/Wmwpy+MI8d9k/hMA0GCSqGSIb3DQEBCwUAA4IB
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
25
|
+
AQCygvpmncmkiSs9r/Kceo4bBPDszhTv6iBi4LwMReqnFrpNLMOWJw7xi8x+3eL2
|
26
|
+
XS09ZPNOt2zm70KmFouBMgOysnDY4k2dE8uF6B8JbZOO8QfalW+CoNBliefOTcn2
|
27
|
+
bg5IOP7UoGM5lC174/cbDJrJnRG9bzig5FAP0mvsgA8zgTRXQzIUAZEo92D5K7p4
|
28
|
+
B4/O998ho6BSOgYBI9Yk1ttdCtti6Y+8N9+fZESsjtWMykA+WXWeGUScHqiU+gH8
|
29
|
+
S7043fq9EbQdBr2AXdj92+CDwuTfHI6/Hj5FVBDULufrJaan4xUgL70Hvc6pTTeW
|
30
|
+
deKfBjgVAq7EYHu1AczzlUly
|
31
31
|
-----END CERTIFICATE-----
|
32
|
-
date:
|
32
|
+
date: 2024-07-09 00:00:00.000000000 Z
|
33
33
|
dependencies:
|
34
34
|
- !ruby/object:Gem::Dependency
|
35
35
|
name: sexp_processor
|
@@ -45,6 +45,20 @@ dependencies:
|
|
45
45
|
- - "~>"
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '4.16'
|
48
|
+
- !ruby/object:Gem::Dependency
|
49
|
+
name: racc
|
50
|
+
requirement: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '1.5'
|
55
|
+
type: :runtime
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '1.5'
|
48
62
|
- !ruby/object:Gem::Dependency
|
49
63
|
name: rake
|
50
64
|
requirement: !ruby/object:Gem::Requirement
|
@@ -79,20 +93,6 @@ dependencies:
|
|
79
93
|
- - "~>"
|
80
94
|
- !ruby/object:Gem::Version
|
81
95
|
version: '2.6'
|
82
|
-
- !ruby/object:Gem::Dependency
|
83
|
-
name: racc
|
84
|
-
requirement: !ruby/object:Gem::Requirement
|
85
|
-
requirements:
|
86
|
-
- - "~>"
|
87
|
-
- !ruby/object:Gem::Version
|
88
|
-
version: '1.5'
|
89
|
-
type: :development
|
90
|
-
prerelease: false
|
91
|
-
version_requirements: !ruby/object:Gem::Requirement
|
92
|
-
requirements:
|
93
|
-
- - "~>"
|
94
|
-
- !ruby/object:Gem::Version
|
95
|
-
version: '1.5'
|
96
96
|
- !ruby/object:Gem::Dependency
|
97
97
|
name: rdoc
|
98
98
|
requirement: !ruby/object:Gem::Requirement
|
@@ -119,14 +119,14 @@ dependencies:
|
|
119
119
|
requirements:
|
120
120
|
- - "~>"
|
121
121
|
- !ruby/object:Gem::Version
|
122
|
-
version: '4.
|
122
|
+
version: '4.2'
|
123
123
|
type: :development
|
124
124
|
prerelease: false
|
125
125
|
version_requirements: !ruby/object:Gem::Requirement
|
126
126
|
requirements:
|
127
127
|
- - "~>"
|
128
128
|
- !ruby/object:Gem::Version
|
129
|
-
version: '4.
|
129
|
+
version: '4.2'
|
130
130
|
description: |-
|
131
131
|
ruby_parser (RP) is a ruby parser written in pure ruby (utilizing
|
132
132
|
racc--which does by default use a C extension). It outputs
|
@@ -184,35 +184,25 @@ files:
|
|
184
184
|
- lib/.document
|
185
185
|
- lib/rp_extensions.rb
|
186
186
|
- lib/rp_stringscanner.rb
|
187
|
-
- lib/ruby20_parser.rb
|
188
|
-
- lib/ruby20_parser.y
|
189
|
-
- lib/ruby21_parser.rb
|
190
|
-
- lib/ruby21_parser.y
|
191
|
-
- lib/ruby22_parser.rb
|
192
|
-
- lib/ruby22_parser.y
|
193
|
-
- lib/ruby23_parser.rb
|
194
|
-
- lib/ruby23_parser.y
|
195
|
-
- lib/ruby24_parser.rb
|
196
|
-
- lib/ruby24_parser.y
|
197
|
-
- lib/ruby25_parser.rb
|
198
|
-
- lib/ruby25_parser.y
|
199
|
-
- lib/ruby26_parser.rb
|
200
|
-
- lib/ruby26_parser.y
|
201
|
-
- lib/ruby27_parser.rb
|
202
|
-
- lib/ruby27_parser.y
|
203
|
-
- lib/ruby30_parser.rb
|
204
|
-
- lib/ruby30_parser.y
|
205
|
-
- lib/ruby31_parser.rb
|
206
|
-
- lib/ruby31_parser.y
|
207
|
-
- lib/ruby32_parser.rb
|
208
|
-
- lib/ruby32_parser.y
|
209
|
-
- lib/ruby3_parser.yy
|
210
187
|
- lib/ruby_lexer.rb
|
211
188
|
- lib/ruby_lexer.rex
|
212
189
|
- lib/ruby_lexer.rex.rb
|
213
190
|
- lib/ruby_lexer_strings.rb
|
214
191
|
- lib/ruby_parser.rb
|
215
|
-
- lib/
|
192
|
+
- lib/ruby_parser2.yy
|
193
|
+
- lib/ruby_parser20.rb
|
194
|
+
- lib/ruby_parser21.rb
|
195
|
+
- lib/ruby_parser22.rb
|
196
|
+
- lib/ruby_parser23.rb
|
197
|
+
- lib/ruby_parser24.rb
|
198
|
+
- lib/ruby_parser25.rb
|
199
|
+
- lib/ruby_parser26.rb
|
200
|
+
- lib/ruby_parser27.rb
|
201
|
+
- lib/ruby_parser3.yy
|
202
|
+
- lib/ruby_parser30.rb
|
203
|
+
- lib/ruby_parser31.rb
|
204
|
+
- lib/ruby_parser32.rb
|
205
|
+
- lib/ruby_parser33.rb
|
216
206
|
- lib/ruby_parser_extras.rb
|
217
207
|
- test/test_ruby_lexer.rb
|
218
208
|
- test/test_ruby_parser.rb
|
@@ -245,7 +235,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
245
235
|
- !ruby/object:Gem::Version
|
246
236
|
version: '0'
|
247
237
|
requirements: []
|
248
|
-
rubygems_version: 3.
|
238
|
+
rubygems_version: 3.5.14
|
249
239
|
signing_key:
|
250
240
|
specification_version: 4
|
251
241
|
summary: ruby_parser (RP) is a ruby parser written in pure ruby (utilizing racc--which
|
metadata.gz.sig
CHANGED
Binary file
|