Class: Asciibook::Builders::BaseBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/asciibook/builders/base_builder.rb

Direct Known Subclasses

EpubBuilder, HtmlBuilder, PdfBuilder

Instance Method Summary collapse

Constructor Details

#initialize(book) ⇒ BaseBuilder

Returns a new instance of BaseBuilder.



4
5
6
7
8
9
10
# File 'lib/asciibook/builders/base_builder.rb', line 4

def initialize(book)
  @book = book
  @theme_share_dir = File.join(@book.theme_dir, 'share')

  # reset book doc
  @book.process
end

Instance Method Details

#buildObject

Raises:

  • (NotImplementedError)


12
13
14
# File 'lib/asciibook/builders/base_builder.rb', line 12

def build
  raise NotImplementedError
end

#copy_file(path, src_dir, dest_dir) ⇒ Object



16
17
18
19
20
21
# File 'lib/asciibook/builders/base_builder.rb', line 16

def copy_file(path, src_dir, dest_dir)
  src_path = File.join(src_dir, path)
  dest_path = File.join(dest_dir, path)
  FileUtils.mkdir_p File.dirname(dest_path)
  FileUtils.cp src_path, dest_path
end