Class: RDoc::Generator::Markdown
- Inherits:
-
Object
- Object
- RDoc::Generator::Markdown
- Defined in:
- lib/rdoc/generator/markdown.rb
Overview
Generates Markdown output and a CSV search index from an RDoc store.
Defined Under Namespace
Modules: OptionsExtension
Constant Summary collapse
- TEMPLATE_DIR =
Directory containing ERB templates.
File.(File.join(File.dirname(__FILE__), "..", "..", "templates"))
- MARKDOWN_UNKNOWN_TAGS =
Supported reverse_markdown unknown-tag modes.
%i[pass_through drop bypass raise].freeze
Instance Attribute Summary collapse
-
#classes ⇒ Array<RDoc::Context>?
readonly
Classes and modules selected for output.
-
#pages ⇒ Array<RDoc::TopLevel>?
readonly
Text files selected for output.
-
#store ⇒ RDoc::Store
readonly
Source store for generated content.
Class Method Summary collapse
-
.setup_options(rdoc_options) ⇒ void
Registers markdown generator-specific RDoc options.
-
.validate_markdown_unknown_tags(value) ⇒ Symbol
Validates the configured reverse_markdown unknown-tag mode.
Instance Method Summary collapse
-
#generate ⇒ void
Writes class files, page files, and the search index.
-
#initialize(store, rdoc_options) ⇒ Markdown
constructor
Creates a generator for an RDoc store and options.
Constructor Details
#initialize(store, rdoc_options) ⇒ Markdown
Creates a generator for an RDoc store and options.
98 99 100 101 102 103 |
# File 'lib/rdoc/generator/markdown.rb', line 98 def initialize(store, ) @store = store @options = @source_dir = File.(.root.to_s) @markdown_unknown_tags = self.class.(.) end |
Instance Attribute Details
#classes ⇒ Array<RDoc::Context>? (readonly)
Classes and modules selected for output.
87 88 89 |
# File 'lib/rdoc/generator/markdown.rb', line 87 def classes @classes end |
#pages ⇒ Array<RDoc::TopLevel>? (readonly)
Text files selected for output.
92 93 94 |
# File 'lib/rdoc/generator/markdown.rb', line 92 def pages @pages end |
#store ⇒ RDoc::Store (readonly)
Source store for generated content.
82 83 84 |
# File 'lib/rdoc/generator/markdown.rb', line 82 def store @store end |
Class Method Details
.setup_options(rdoc_options) ⇒ void
This method returns an undefined value.
Registers markdown generator-specific RDoc options.
57 58 59 60 61 62 63 64 |
# File 'lib/rdoc/generator/markdown.rb', line 57 def self.() .option_parser.on( "--markdown-unknown-tags=MODE", "How to handle unknown HTML tags: #{MARKDOWN_UNKNOWN_TAGS.join(", ")}." ) do |value| . = value.to_sym end end |
.validate_markdown_unknown_tags(value) ⇒ Symbol
Validates the configured reverse_markdown unknown-tag mode.
71 72 73 74 75 76 77 |
# File 'lib/rdoc/generator/markdown.rb', line 71 def self.(value) return value if MARKDOWN_UNKNOWN_TAGS.include?(value) expected = MARKDOWN_UNKNOWN_TAGS.map { |mode| ":#{mode}" }.join(", ") raise OptionParser::InvalidArgument, "invalid markdown_unknown_tags: #{value.inspect} (expected one of: #{expected})" end |
Instance Method Details
#generate ⇒ void
This method returns an undefined value.
Writes class files, page files, and the search index.
108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 |
# File 'lib/rdoc/generator/markdown.rb', line 108 def generate debug("Setting things up ") setup debug("Generate documentation in #{@output_dir}") emit_classfiles debug("Generate pages in #{@output_dir}") emit_pagefiles debug("Generate index file in #{@output_dir}") emit_csv_index end |