diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/prism/translation/ripper.rb | 22 |
1 files changed, 20 insertions, 2 deletions
diff --git a/lib/prism/translation/ripper.rb b/lib/prism/translation/ripper.rb index 47b27bc75c..799de0e176 100644 --- a/lib/prism/translation/ripper.rb +++ b/lib/prism/translation/ripper.rb @@ -1252,13 +1252,31 @@ module Prism # END {} # ^^^^^^ def visit_post_execution_node(node) - raise NoMethodError, __method__ + statements = + if node.statements.nil? + bounds(node.location) + on_stmts_add(on_stmts_new, on_void_stmt) + else + visit(node.statements) + end + + bounds(node.location) + on_END(statements) end # BEGIN {} # ^^^^^^^^ def visit_pre_execution_node(node) - raise NoMethodError, __method__ + statements = + if node.statements.nil? + bounds(node.location) + on_stmts_add(on_stmts_new, on_void_stmt) + else + visit(node.statements) + end + + bounds(node.location) + on_BEGIN(statements) end # The top-level program node. |
