class RDoc::Markup::ToHtmlSnippet

def convert_flow(flow)

def convert_flow(flow)
  throw :done if @characters >= @character_limit
  res = []
  @mask = 0
  flow.each do |item|
    case item
    when RDoc::Markup::AttrChanger then
      off_tags res, item
      on_tags  res, item
    when String then
      text = convert_string item
      res << truncate(text)
    when RDoc::Markup::RegexpHandling then
      text = convert_regexp_handling item
      res << truncate(text)
    else
      raise "Unknown flow element: #{item.inspect}"
    end
    if @characters >= @character_limit then
      off_tags res, RDoc::Markup::AttrChanger.new(0, @mask)
      break
    end
  end
  res << ' ...' if @characters >= @character_limit
  res.join
end