class Prism::DotVisitor
def visit_for_node(node)
def visit_for_node(node) table = Table.new("ForNode") id = node_id(node) # index table.field("index", port: true) digraph.edge("#{id}:index -> #{node_id(node.index)};") # collection table.field("collection", port: true) digraph.edge("#{id}:collection -> #{node_id(node.collection)};") # statements unless (statements = node.statements).nil? table.field("statements", port: true) digraph.edge("#{id}:statements -> #{node_id(statements)};") end # for_keyword_loc table.field("for_keyword_loc", location_inspect(node.for_keyword_loc)) # in_keyword_loc table.field("in_keyword_loc", location_inspect(node.in_keyword_loc)) # do_keyword_loc unless (do_keyword_loc = node.do_keyword_loc).nil? table.field("do_keyword_loc", location_inspect(do_keyword_loc)) end # end_keyword_loc table.field("end_keyword_loc", location_inspect(node.end_keyword_loc)) digraph.nodes << <<~DOT #{id} [ label=<#{table.to_dot.gsub(/\n/, "\n ")}> ]; DOT super end