summaryrefslogtreecommitdiff
path: root/lib/prism/translation/ripper.rb
diff options
context:
space:
mode:
authorKevin Newton <kddnewton@gmail.com>2024-03-05 23:29:10 -0500
committergit <svn-admin@ruby-lang.org>2024-03-06 16:42:55 +0000
commitae3f385c5f0a3a9272f53cc64525c78f4a7ae410 (patch)
tree6c61694b81a0f1b8be5cb0080fa77ca577f752a2 /lib/prism/translation/ripper.rb
parentbe5d99f7a22b8917fbae080f7ceeae94206f765a (diff)
[ruby/prism] Fix up block arguments node for ripper translation
https://github.com/ruby/prism/commit/81feef447a
Diffstat (limited to 'lib/prism/translation/ripper.rb')
-rw-r--r--lib/prism/translation/ripper.rb15
1 files changed, 7 insertions, 8 deletions
diff --git a/lib/prism/translation/ripper.rb b/lib/prism/translation/ripper.rb
index 8f67c3d077..42c4dfff87 100644
--- a/lib/prism/translation/ripper.rb
+++ b/lib/prism/translation/ripper.rb
@@ -693,22 +693,21 @@ module Prism
block = nil
end
- arguments =
+ [
if arguments.length == 1 && arguments.first.is_a?(ForwardingArgumentsNode)
visit(arguments.first)
elsif arguments.any?
args = visit_arguments(arguments)
- if block.is_a?(BlockArgumentNode) || arguments.last.is_a?(ForwardingArgumentsNode)
+ if block_node.is_a?(BlockArgumentNode) || arguments.last.is_a?(ForwardingArgumentsNode)
args
else
bounds(arguments.first.location)
on_args_add_block(args, false)
end
- end
-
- block = visit(block) if !block.nil?
- [arguments, block]
+ end,
+ visit(block)
+ ]
end
# foo.bar += baz
@@ -1985,10 +1984,10 @@ module Prism
bounds(node.location)
on_next(on_args_new)
else
- arguments = visit_arguments(node.arguments.arguments)
+ arguments = visit(node.arguments)
bounds(node.location)
- on_next(on_args_add_block(arguments, false))
+ on_next(arguments)
end
end