Module: RDoc::Generator
| Relationships & Source Files | |
| Namespace Children | |
|
Modules:
| |
|
Classes:
| |
| Defined in: | lib/rdoc/generator.rb |
Overview
RDoc uses generators to turn parsed source code in the form of an CodeObject tree into some form of output. RDoc comes with the HTML generator Darkfish and an ri data generator RI.
Registering a Generator
Generators are registered by calling RDoc.add_generator with the class of the generator:
class My::Awesome::Generator
RDoc::RDoc.add_generator self
end
Adding Options to rdoc
Before option processing in rdoc, Options will call .setup_options on the generator class with an Options instance. The generator can use Options#option_parser to add command-line options to the rdoc tool. See RDoc::Options@Custom+Options for an example and see OptionParser for details on how to add options.
You can extend the Options instance with additional accessors for your generator.
Generator Instantiation
After parsing, RDoc will instantiate a generator by calling #initialize with an Store instance and an Options instance.
The Store instance holds documentation for parsed source code. In RDoc 3 and earlier the TopLevel class held this data. When upgrading a generator from RDoc 3 and earlier you should only need to replace TopLevel with the store instance.
RDoc will then call #generate on the generator instance. You can use the various methods on Store and in the CodeObject tree to create your desired output format.