class Prism::DotVisitor
def visit_singleton_class_node(node)
def visit_singleton_class_node(node) table = Table.new("SingletonClassNode") id = node_id(node) # locals table.field("locals", node.locals.inspect) # class_keyword_loc table.field("class_keyword_loc", location_inspect(node.class_keyword_loc)) # operator_loc table.field("operator_loc", location_inspect(node.operator_loc)) # expression table.field("expression", port: true) digraph.edge("#{id}:expression -> #{node_id(node.expression)};") # body unless (body = node.body).nil? table.field("body", port: true) digraph.edge("#{id}:body -> #{node_id(body)};") 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