Skip to content

Commit 68f434e

Browse files
committed
Use partial_script for the parser translators
Followup to #3079
1 parent 5bf1903 commit 68f434e

File tree

3 files changed

+6
-10
lines changed

3 files changed

+6
-10
lines changed

lib/prism/translation/parser.rb

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ def parse(source_buffer)
5151
source = source_buffer.source
5252

5353
offset_cache = build_offset_cache(source)
54-
result = unwrap(Prism.parse(source, filepath: source_buffer.name, version: convert_for_prism(version), scopes: [[]], encoding: false), offset_cache)
54+
result = unwrap(Prism.parse(source, filepath: source_buffer.name, version: convert_for_prism(version), partial_script: true, encoding: false), offset_cache)
5555

5656
build_ast(result.value, offset_cache)
5757
ensure
@@ -64,7 +64,7 @@ def parse_with_comments(source_buffer)
6464
source = source_buffer.source
6565

6666
offset_cache = build_offset_cache(source)
67-
result = unwrap(Prism.parse(source, filepath: source_buffer.name, version: convert_for_prism(version), scopes: [[]], encoding: false), offset_cache)
67+
result = unwrap(Prism.parse(source, filepath: source_buffer.name, version: convert_for_prism(version), partial_script: true, encoding: false), offset_cache)
6868

6969
[
7070
build_ast(result.value, offset_cache),
@@ -83,7 +83,7 @@ def tokenize(source_buffer, recover = false)
8383
offset_cache = build_offset_cache(source)
8484
result =
8585
begin
86-
unwrap(Prism.parse_lex(source, filepath: source_buffer.name, version: convert_for_prism(version), scopes: [[]], encoding: false), offset_cache)
86+
unwrap(Prism.parse_lex(source, filepath: source_buffer.name, version: convert_for_prism(version), partial_script: true, encoding: false), offset_cache)
8787
rescue ::Parser::SyntaxError
8888
raise if !recover
8989
end

lib/prism/translation/ripper.rb

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3269,11 +3269,7 @@ def visit_yield_node(node)
32693269

32703270
# Lazily initialize the parse result.
32713271
def result
3272-
@result ||=
3273-
begin
3274-
scopes = RUBY_VERSION >= "3.3.0" ? [] : [[]]
3275-
Prism.parse(source, scopes: scopes)
3276-
end
3272+
@result ||= Prism.parse(source, partial_script: true)
32773273
end
32783274

32793275
##########################################################################

lib/prism/translation/ruby_parser.rb

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1596,13 +1596,13 @@ def visit_write_value(node)
15961596
# Parse the given source and translate it into the seattlerb/ruby_parser
15971597
# gem's Sexp format.
15981598
def parse(source, filepath = "(string)")
1599-
translate(Prism.parse(source, filepath: filepath, scopes: [[]]), filepath)
1599+
translate(Prism.parse(source, filepath: filepath, partial_script: true), filepath)
16001600
end
16011601

16021602
# Parse the given file and translate it into the seattlerb/ruby_parser
16031603
# gem's Sexp format.
16041604
def parse_file(filepath)
1605-
translate(Prism.parse_file(filepath, scopes: [[]]), filepath)
1605+
translate(Prism.parse_file(filepath, partial_script: true), filepath)
16061606
end
16071607

16081608
class << self

0 commit comments

Comments
 (0)