class SyntaxTree::MatchVisitor

def node(node, _type)

def node(node, _type)
  items = []
  q.with_target(items) { yield }
  if items.empty?
    q.text(node.class.name)
    return
  end
  q.group do
    q.text(node.class.name)
    q.text("[")
    q.indent do
      q.breakable("")
      q.seplist(items) { |item| q.target << item }
    end
    q.breakable("")
    q.text("]")
  end
end