class Template
Public Class Methods
new(template, meta_data, get_tag, get_tags, get_path)
click to toggle source
# File lib/template.rb, line 5 def initialize(template, meta_data, get_tag, get_tags, get_path) @template = template define_singleton_method(:get_tag) do |tag| get_tag.call(tag) end define_singleton_method(:get_tags) do get_tags.call end define_singleton_method(:get_path) do |path| get_path.call(path) end # Setting all the metadata keys as instance variables meta_data.each do |key, val| instance_variable_set("@#{key}", val) end end
Public Instance Methods
render()
click to toggle source
# File lib/template.rb, line 25 def render() renderer = ERB.new(@template) @html = renderer.result(binding) end
write()
click to toggle source
# File lib/template.rb, line 30 def write view_path = Pathname("dist/" + @path.delete_prefix('"').delete_suffix('"').delete_suffix("/") + ".html") view_path.dirname.mkpath view_path.write(@html) end