Sha256: 9ed98a243ea47d437634179e7f931489a6b6a9eccf4662c252458efdb63edfbe

Contents?: true

Size: 1005 Bytes

Versions: 20

Compression:

Stored size: 1005 Bytes

Contents

##
# Parse a non-source file. We basically take the whole thing as one big
# comment.

class RDoc::Parser::Simple < RDoc::Parser

  parse_files_matching(//)

  attr_reader :content # :nodoc:

  ##
  # Prepare to parse a plain file

  def initialize(top_level, file_name, content, options, stats)
    super

    preprocess = RDoc::Markup::PreProcess.new @file_name, @options.rdoc_include

    preprocess.handle @content, @top_level
  end

  ##
  # Extract the file contents and attach them to the TopLevel as a comment

  def scan
    comment = remove_coding_comment @content
    comment = remove_private_comments comment

    @top_level.comment = comment
    @top_level.parser = self.class
    @top_level
  end

  ##
  # Removes comments wrapped in <tt>--/++</tt>

  def remove_private_comments text
    text.gsub(/^--\n.*?^\+\+/m, '').sub(/^--\n.*/m, '')
  end

  ##
  # Removes the encoding magic comment from +text+

  def remove_coding_comment text
    text.sub(/\A# .*coding[=:].*$/, '')
  end

end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
rdoc-3.9.5 lib/rdoc/parser/simple.rb
rdoc-3.9.4 lib/rdoc/parser/simple.rb
rdoc-3.9.3 lib/rdoc/parser/simple.rb
rdoc-3.9.2 lib/rdoc/parser/simple.rb
rdoc-3.9.1 lib/rdoc/parser/simple.rb
rdoc-3.9 lib/rdoc/parser/simple.rb
rdoc-3.8 lib/rdoc/parser/simple.rb
rdoc-3.7 lib/rdoc/parser/simple.rb
rdoc-3.6.1 lib/rdoc/parser/simple.rb
rdoc-3.6 lib/rdoc/parser/simple.rb
rdoc-3.5.3 lib/rdoc/parser/simple.rb
rdoc-3.5.2 lib/rdoc/parser/simple.rb
rdoc-3.5.1 lib/rdoc/parser/simple.rb
rdoc-3.5 lib/rdoc/parser/simple.rb
rdoc-3.4 lib/rdoc/parser/simple.rb
rdoc-3.3 lib/rdoc/parser/simple.rb
rdoc-3.2 lib/rdoc/parser/simple.rb
rdoc-3.1 lib/rdoc/parser/simple.rb
rdoc-3.0.1 lib/rdoc/parser/simple.rb
rdoc-3.0 lib/rdoc/parser/simple.rb