instance method
Prism::DotVisitor#visit_block_node
visit_block_node(node)
lib/prism/dot_visitor.rb
View on GitHub ↗
# File tmp/rubies/ruby-4.0.0/lib/prism/dot_visitor.rb, line 510
def visit_block_node(node)
table = Table.new("BlockNode")
id = node_id(node)
# locals
table.field("locals", node.locals.inspect)
# parameters
unless (parameters = node.parameters).nil?
table.field("parameters", port: true)
digraph.edge("#{id}:parameters -> #{node_id(parameters)};")
end
# body
unless (body = node.body).nil?
table.field("body", port: true)
digraph.edge("#{id}:body -> #{node_id(body)};")
end
# opening_loc
table.field("opening_loc", location_inspect(node.opening_loc))
# closing_loc
table.field("closing_loc", location_inspect(node.closing_loc))
digraph.nodes << <<~DOT
#{id} [
label=<#{table.to_dot.gsub(/\n/, "\n ")}>
];
DOT
super
end
Visit a BlockNode node.