parser 3.2.2.3 → 3.3.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/parser/all.rb +1 -0
- data/lib/parser/builders/default.rb +37 -10
- data/lib/parser/current.rb +14 -5
- data/lib/parser/lexer/literal.rb +16 -1
- data/lib/parser/lexer-F0.rb +295 -243
- data/lib/parser/lexer-F1.rb +444 -383
- data/lib/parser/macruby.rb +2 -2
- data/lib/parser/messages.rb +46 -41
- data/lib/parser/ruby18.rb +2 -2
- data/lib/parser/ruby19.rb +2 -2
- data/lib/parser/ruby20.rb +2 -2
- data/lib/parser/ruby21.rb +2 -2
- data/lib/parser/ruby22.rb +2 -2
- data/lib/parser/ruby23.rb +2 -2
- data/lib/parser/ruby24.rb +2 -2
- data/lib/parser/ruby25.rb +2 -2
- data/lib/parser/ruby26.rb +2 -2
- data/lib/parser/ruby27.rb +2 -2
- data/lib/parser/ruby30.rb +2 -2
- data/lib/parser/ruby31.rb +2 -2
- data/lib/parser/ruby32.rb +2 -2
- data/lib/parser/ruby33.rb +6782 -6897
- data/lib/parser/ruby34.rb +12589 -0
- data/lib/parser/rubymotion.rb +2 -2
- data/lib/parser/runner.rb +5 -0
- data/lib/parser/source/comment/associator.rb +7 -7
- data/lib/parser/static_environment.rb +12 -0
- data/lib/parser/version.rb +1 -1
- metadata +7 -6
data/lib/parser/rubymotion.rb
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
# -*- encoding:utf-8; warn-indent:false; frozen_string_literal: true -*-
|
2
2
|
#
|
3
3
|
# DO NOT MODIFY!!!!
|
4
|
-
# This file is automatically generated by Racc 1.7.
|
5
|
-
# from Racc grammar file "".
|
4
|
+
# This file is automatically generated by Racc 1.7.3
|
5
|
+
# from Racc grammar file "rubymotion.y".
|
6
6
|
#
|
7
7
|
|
8
8
|
require 'racc/parser.rb'
|
data/lib/parser/runner.rb
CHANGED
@@ -133,6 +133,11 @@ module Parser
|
|
133
133
|
@parser_class = Parser::Ruby33
|
134
134
|
end
|
135
135
|
|
136
|
+
opts.on '--34', 'Parse as Ruby 3.4 would' do
|
137
|
+
require 'parser/ruby34'
|
138
|
+
@parser_class = Parser::Ruby34
|
139
|
+
end
|
140
|
+
|
136
141
|
opts.on '--mac', 'Parse as MacRuby 0.12 would' do
|
137
142
|
require 'parser/macruby'
|
138
143
|
@parser_class = Parser::MacRuby
|
@@ -95,10 +95,11 @@ module Parser
|
|
95
95
|
end
|
96
96
|
|
97
97
|
##
|
98
|
-
# Same as {associate}, but
|
99
|
-
# result even in presence
|
98
|
+
# Same as {associate}, but uses `node.loc` instead of `node` as
|
99
|
+
# the hash key, thus producing an unambiguous result even in presence
|
100
|
+
# of equal nodes.
|
100
101
|
#
|
101
|
-
# @return [Hash<Parser::Source::
|
102
|
+
# @return [Hash<Parser::Source::Map, Array<Parser::Source::Comment>>]
|
102
103
|
#
|
103
104
|
def associate_locations
|
104
105
|
@map_using = :location
|
@@ -106,11 +107,10 @@ module Parser
|
|
106
107
|
end
|
107
108
|
|
108
109
|
##
|
109
|
-
# Same as {associate}, but
|
110
|
-
#
|
111
|
-
# of equal nodes.
|
110
|
+
# Same as {associate}, but compares by identity, thus producing an unambiguous
|
111
|
+
# result even in presence of equal nodes.
|
112
112
|
#
|
113
|
-
# @return [Hash<Parser::Source::
|
113
|
+
# @return [Hash<Parser::Source::Node, Array<Parser::Source::Comment>>]
|
114
114
|
#
|
115
115
|
def associate_by_identity
|
116
116
|
@map_using = :identity
|
@@ -63,6 +63,10 @@ module Parser
|
|
63
63
|
declared?(ANONYMOUS_BLOCKARG)
|
64
64
|
end
|
65
65
|
|
66
|
+
def parent_has_anonymous_blockarg?
|
67
|
+
@stack.any? { |variables| variables.include?(ANONYMOUS_BLOCKARG) }
|
68
|
+
end
|
69
|
+
|
66
70
|
def declare_anonymous_restarg
|
67
71
|
declare(ANONYMOUS_RESTARG)
|
68
72
|
end
|
@@ -71,6 +75,10 @@ module Parser
|
|
71
75
|
declared?(ANONYMOUS_RESTARG)
|
72
76
|
end
|
73
77
|
|
78
|
+
def parent_has_anonymous_restarg?
|
79
|
+
@stack.any? { |variables| variables.include?(ANONYMOUS_RESTARG) }
|
80
|
+
end
|
81
|
+
|
74
82
|
def declare_anonymous_kwrestarg
|
75
83
|
declare(ANONYMOUS_KWRESTARG)
|
76
84
|
end
|
@@ -79,6 +87,10 @@ module Parser
|
|
79
87
|
declared?(ANONYMOUS_KWRESTARG)
|
80
88
|
end
|
81
89
|
|
90
|
+
def parent_has_anonymous_kwrestarg?
|
91
|
+
@stack.any? { |variables| variables.include?(ANONYMOUS_KWRESTARG) }
|
92
|
+
end
|
93
|
+
|
82
94
|
def empty?
|
83
95
|
@stack.empty?
|
84
96
|
end
|
data/lib/parser/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.
|
4
|
+
version: 3.3.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- whitequark
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2024-01-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: ast
|
@@ -210,6 +210,7 @@ files:
|
|
210
210
|
- lib/parser/ruby31.rb
|
211
211
|
- lib/parser/ruby32.rb
|
212
212
|
- lib/parser/ruby33.rb
|
213
|
+
- lib/parser/ruby34.rb
|
213
214
|
- lib/parser/rubymotion.rb
|
214
215
|
- lib/parser/runner.rb
|
215
216
|
- lib/parser/runner/ruby_parse.rb
|
@@ -249,9 +250,9 @@ licenses:
|
|
249
250
|
- MIT
|
250
251
|
metadata:
|
251
252
|
bug_tracker_uri: https://github.com/whitequark/parser/issues
|
252
|
-
changelog_uri: https://github.com/whitequark/parser/blob/v3.
|
253
|
-
documentation_uri: https://www.rubydoc.info/gems/parser/3.
|
254
|
-
source_code_uri: https://github.com/whitequark/parser/tree/v3.
|
253
|
+
changelog_uri: https://github.com/whitequark/parser/blob/v3.3.0.5/CHANGELOG.md
|
254
|
+
documentation_uri: https://www.rubydoc.info/gems/parser/3.3.0.5
|
255
|
+
source_code_uri: https://github.com/whitequark/parser/tree/v3.3.0.5
|
255
256
|
post_install_message:
|
256
257
|
rdoc_options: []
|
257
258
|
require_paths:
|
@@ -267,7 +268,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
267
268
|
- !ruby/object:Gem::Version
|
268
269
|
version: '0'
|
269
270
|
requirements: []
|
270
|
-
rubygems_version: 3.
|
271
|
+
rubygems_version: 3.5.3
|
271
272
|
signing_key:
|
272
273
|
specification_version: 4
|
273
274
|
summary: A Ruby parser written in pure Ruby.
|