Module: ModuleSync::Renderer
- Defined in:
- lib/modulesync/renderer.rb
Defined Under Namespace
Classes: ForgeModuleFile
Class Method Summary collapse
- .build(from_erb_template) ⇒ Object
- .remove(file) ⇒ Object
- .render(template, configs = {}) ⇒ Object
- .sync(template, to_file) ⇒ Object
Class Method Details
.build(from_erb_template) ⇒ Object
13 14 15 16 17 18 |
# File 'lib/modulesync/renderer.rb', line 13 def self.build(from_erb_template) erb_obj = ERB.new(File.read(from_erb_template), nil, '-') erb_obj.filename = from_erb_template.chomp('.erb') erb_obj.def_method(ForgeModuleFile, 'render()') erb_obj end |
.remove(file) ⇒ Object
20 21 22 23 24 |
# File 'lib/modulesync/renderer.rb', line 20 def self.remove(file) if File.exists?(file) File.delete(file) end end |
.render(template, configs = {}) ⇒ Object
26 27 28 |
# File 'lib/modulesync/renderer.rb', line 26 def self.render(template, configs = {}) ForgeModuleFile.new(configs).render() end |
.sync(template, to_file) ⇒ Object
30 31 32 33 34 35 36 37 38 |
# File 'lib/modulesync/renderer.rb', line 30 def self.sync(template, to_file) path = to_file.rpartition('/').first if(! path.empty?) FileUtils.mkdir_p(path) end File.open(to_file, 'w') do |file| file.write(template) end end |