Type:
Class

A parser is simple a class that subclasses RDoc::Parser and implements scan to fill in an RDoc::TopLevel with parsed data.

The initialize method takes an RDoc::TopLevel to fill with parsed content, the name of the file to be parsed, the content of the file, an RDoc::Options object and an RDoc::Stats object to inform the user of parsed items. The scan method is then called to parse the file and must return the RDoc::TopLevel object. By calling super these items will be set for you.

In order to be used by RDoc the parser needs to register the file extensions it can parse. Use ::parse_files_matching to register extensions.

require 'rdoc'

class RDoc::Parser::Xyz < RDoc::Parser
  parse_files_matching /\.xyz$/

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

    # extra initialization if needed
  end

  def scan
    # parse file and fill in @top_level
  end
end
do_define_class
  • References/Ruby on Rails/Ruby/Classes/RDoc/RDoc::Parser/RDoc::Parser::C

do_define_class() Instance Public methods Scans content for rb_define_class

2025-01-10 15:47:30
warn
  • References/Ruby on Rails/Ruby/Classes/RDoc/RDoc::Parser/RDoc::Parser::Ruby

warn(message) Instance Public methods Prints message to +$stderr+

2025-01-10 15:47:30
remove_private_comment
  • References/Ruby on Rails/Ruby/Classes/RDoc/RDoc::Parser/RDoc::Parser::Simple

remove_private_comment(comment) Instance Public methods Removes private comments

2025-01-10 15:47:30
skip_tkspace_comment
  • References/Ruby on Rails/Ruby/Classes/RDoc/RDoc::Parser/RDoc::Parser::Ruby

skip_tkspace_comment(skip_nl = true) Instance Public methods Skip spaces until

2025-01-10 15:47:30
parse_top_level_statements
  • References/Ruby on Rails/Ruby/Classes/RDoc/RDoc::Parser/RDoc::Parser::Ruby

parse_top_level_statements(container) Instance Public methods Parses statements

2025-01-10 15:47:30
parse_module
  • References/Ruby on Rails/Ruby/Classes/RDoc/RDoc::Parser/RDoc::Parser::Ruby

parse_module(container, single, tk, comment) Instance Public methods Parses

2025-01-10 15:47:30
find_body
  • References/Ruby on Rails/Ruby/Classes/RDoc/RDoc::Parser/RDoc::Parser::C

find_body(class_name, meth_name, meth_obj, file_content, quiet = false) Instance Public methods

2025-01-10 15:47:30
parse_attr_accessor
  • References/Ruby on Rails/Ruby/Classes/RDoc/RDoc::Parser/RDoc::Parser::Ruby

parse_attr_accessor(context, single, tk, comment) Instance Public methods Creates

2025-01-10 15:47:30
parse_comment_tomdoc
  • References/Ruby on Rails/Ruby/Classes/RDoc/RDoc::Parser/RDoc::Parser::Ruby

parse_comment_tomdoc(container, tk, comment) Instance Public methods Creates

2025-01-10 15:47:30
scan
  • References/Ruby on Rails/Ruby/Classes/RDoc/RDoc::Parser/RDoc::Parser::C

scan() Instance Public methods Extracts the classes, modules, methods, attributes

2025-01-10 15:47:30