class Makanai::Template
Attributes
engine[R]
locals[R]
path[R]
Public Class Methods
new(path:, engine: :erb, locals: {})
click to toggle source
# File lib/makanai/template.rb, line 7 def initialize(path:, engine: :erb, locals: {}) @path = path @engine = engine @locals = locals end
Public Instance Methods
render()
click to toggle source
# File lib/makanai/template.rb, line 15 def render template_file = File.read("#{path}.#{engine}") engine_class.new(text: template_file, locals: locals).result end
Private Instance Methods
engine_class()
click to toggle source
# File lib/makanai/template.rb, line 22 def engine_class require_relative File.join('template_engine', engine.to_s) Object.const_get("Makanai::TemplateEngine::#{engine.capitalize}") rescue LoadError raise UnsupportedException end