Class: GhostWriter::Writer::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/ghost_writer/writer/base.rb

Direct Known Subclasses

Markdown, Rst

Instance Method Summary collapse

Constructor Details

#initialize(document, options = {}) ⇒ Base

Returns a new instance of Base.



5
6
7
8
# File 'lib/ghost_writer/writer/base.rb', line 5

def initialize(document, options = {})
  @document  = document
  @overwrite = options[:overwrite] || false
end

Instance Method Details

#write_fileObject



10
11
12
13
14
15
16
17
18
19
# File 'lib/ghost_writer/writer/base.rb', line 10

def write_file
  unless File.exist?(File.dirname(@document.basename))
    FileUtils.mkdir_p(File.dirname(@document.basename))
  end

  mode = @overwrite ? "w" : "a"
  File.open("#{@document.basename}.#{extname}", mode) do |f|
    f.write template.result(@document.instance_eval { binding })
  end
end