Sha256: 8a3d97f801e1784b7be189e014cc56e7434a1bbff8a1a644efda2860b8d70cf1

Contents?: true

Size: 1.25 KB

Versions: 78

Compression:

Stored size: 1.25 KB

Contents

##
# A section of verbatim text

class RDoc::Markup::Verbatim < RDoc::Markup::Raw

  ##
  # Format of this verbatim section

  attr_accessor :format

  def initialize *parts # :nodoc:
    super

    @format = nil
  end

  def == other # :nodoc:
    super and @format == other.format
  end

  ##
  # Calls #accept_verbatim on +visitor+

  def accept visitor
    visitor.accept_verbatim self
  end

  ##
  # Collapses 3+ newlines into two newlines

  def normalize
    parts = []

    newlines = 0

    @parts.each do |part|
      case part
      when /^\s*\n/ then
        newlines += 1
        parts << part if newlines == 1
      else
        newlines = 0
        parts << part
      end
    end

    parts.pop if parts.last =~ /\A\r?\n\z/

    @parts = parts
  end

  def pretty_print q # :nodoc:
    self.class.name =~ /.*::(\w{1,4})/i

    q.group 2, "[#{$1.downcase}: ", ']' do
      if @format then
        q.text "format: #{@format}"
        q.breakable
      end

      q.seplist @parts do |part|
        q.pp part
      end
    end
  end

  ##
  # Is this verbatim section Ruby code?

  def ruby?
    @format ||= nil # TODO for older ri data, switch the tree to marshal_dump
    @format == :ruby
  end

  ##
  # The text of the section

  def text
    @parts.join
  end

end

Version data entries

78 entries across 48 versions & 5 rubygems

Version Path
rb2exe-0.1.44 bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/verbatim.rb
rb2exe-0.1.43 bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/verbatim.rb
rb2exe-0.1.40 bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/verbatim.rb
rb2exe-0.1.39 bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/verbatim.rb
rb2exe-0.1.38 bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/verbatim.rb
rb2exe-0.1.29 bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/verbatim.rb
rb2exe-0.1.14 bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/verbatim.rb
rb2exe-0.1.12 bin/traveling-ruby-2.2.2/lib/ruby/2.2.0/rdoc/markup/verbatim.rb
rdoc-4.2.2 lib/rdoc/markup/verbatim.rb
honeybadger-2.4.0 vendor/gems/ruby/1.9.1/gems/rdoc-4.1.1/lib/rdoc/markup/verbatim.rb
honeybadger-2.4.0 vendor/gems/ruby/2.1.0/gems/rdoc-4.1.1/lib/rdoc/markup/verbatim.rb
honeybadger-2.4.0 vendor/gems/ruby/2.2.0/gems/rdoc-4.1.1/lib/rdoc/markup/verbatim.rb
rdoc-4.2.1 lib/rdoc/markup/verbatim.rb
rdoc-4.2.0 lib/rdoc/markup/verbatim.rb
rdoc-4.1.2 lib/rdoc/markup/verbatim.rb
rdoc-4.1.1 lib/rdoc/markup/verbatim.rb
rdoc-4.1.0 lib/rdoc/markup/verbatim.rb
rdoc-4.1.0.preview.3 lib/rdoc/markup/verbatim.rb