class ActionDispatch::Routing::HtmlTableFormatter

def header(routes)

The header is part of the HTML page, so we don't construct it here.
def header(routes)
end

def initialize(view)

def initialize(view)
  @view = view
  @buffer = []
end

def no_routes(*)

def no_routes(*)
  @buffer << <<~MESSAGE
    <p>You don't have any routes defined!</p>
    <ul>
      <li>Please add some routes in <tt>config/routes.rb</tt>.</li>
      <li>
        For more information about routes, please see the Rails guide
        <a href="https://guides.rubyonrails.org/routing.html">Rails Routing from the Outside In</a>.
      </li>
    </ul>
  MESSAGE
end

def result

def result
  @view.raw @view.render(layout: "routes/table") {
    @view.raw @buffer.join("\n")
  }
end

def section(routes)

def section(routes)
  @buffer << @view.render(partial: "routes/route", collection: routes)
end

def section_title(title)

def section_title(title)
  @buffer << %(<tr><th colspan="4">#{title}</th></tr>)
end