Class: RDoc::Generator::Markdown

Inherits:
Object
  • Object
show all
Defined in:
lib/rdoc/generator/markdown.rb

Overview

Generates Markdown output and a CSV search index from an RDoc store.

Constant Summary collapse

TEMPLATE_DIR =

Directory containing ERB templates.

File.expand_path(File.join(File.dirname(__FILE__), "..", "..", "templates"))

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(store, rdoc_options) ⇒ Markdown

Creates a generator for an RDoc store and options.

Parameters:

  • store (RDoc::Store)

    Source documentation store.

  • rdoc_options (RDoc::Options)

    Generator options.



50
51
52
53
54
55
# File 'lib/rdoc/generator/markdown.rb', line 50

def initialize(store, rdoc_options)
  @store = store
  @options = rdoc_options

  @base_dir = Pathname.pwd
end

Instance Attribute Details

#base_dirPathname (readonly)

Working directory captured when the generator is created.

Returns:

  • (Pathname)


25
26
27
# File 'lib/rdoc/generator/markdown.rb', line 25

def base_dir
  @base_dir
end

#classesArray<RDoc::Context>? (readonly)

Classes and modules selected for output.

Returns:

  • (Array<RDoc::Context>, nil)


30
31
32
# File 'lib/rdoc/generator/markdown.rb', line 30

def classes
  @classes
end

#pagesArray<RDoc::TopLevel>? (readonly)

Text files selected for output.

Returns:

  • (Array<RDoc::TopLevel>, nil)


35
36
37
# File 'lib/rdoc/generator/markdown.rb', line 35

def pages
  @pages
end

#storeRDoc::Store (readonly)

Source store for generated content.

Returns:

  • (RDoc::Store)


20
21
22
# File 'lib/rdoc/generator/markdown.rb', line 20

def store
  @store
end

Instance Method Details

#class_dirnil Also known as: file_dir

Required by RDoc’s generator interface; markdown output has no class subdirectory.

Returns:

  • (nil)


40
41
# File 'lib/rdoc/generator/markdown.rb', line 40

def class_dir
end

#generatevoid

This method returns an undefined value.

Writes class files, page files, and the search index.



60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/rdoc/generator/markdown.rb', line 60

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