Class: Docco::DocsBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/docco.rb

Instance Method Summary collapse

Constructor Details

#initialize(readme_path:, output_dir:, gemspec_path: nil) ⇒ DocsBuilder

Returns a new instance of DocsBuilder.



36
37
38
39
40
# File 'lib/docco.rb', line 36

def initialize(readme_path:, output_dir:, gemspec_path: nil)
  @readme_path = readme_path
  @output_dir = output_dir
  @info = load_gemspec_info(gemspec_path || find_gemspec)
end

Instance Method Details

#build(overwrite: false) ⇒ Object



42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/docco.rb', line 42

def build(overwrite: false)
  puts "Reading #{@readme_path}..."
  markdown = File.read(@readme_path)

  puts "Parsing markdown..."
  root = Docco.parse(markdown)

  builder = Docco::Builder.new(nodes: root.nodes, info: @info)

  builder.visit(Docco::Themes::Default)
  report = Docco.write(builder.pages, output_dir: @output_dir, overwrite:)
  report.each do |path, written|
    puts "Wrote file #{path}" if written
  end
end