class Himl::Handler

Constants

ERB_HANDLER

Public Class Methods

call(template, source = nil) click to toggle source
# File lib/himl/handler.rb, line 7
def self.call(template, source = nil)
  new.call(template, source || template.source)
end

Public Instance Methods

call(template, source) click to toggle source
# File lib/himl/handler.rb, line 11
def call(template, source)
  erb = Himl::Parser.new.call(source).to_erb

  escape = ERB_HANDLER.respond_to?(:escape_ignore_list) ? ERB_HANDLER.escape_ignore_list.include?(template.type) : ERB_HANDLER.escape_whitelist.include?(template.type)

  ERB_HANDLER.erb_implementation.new(
    erb,
    escape: escape,
    trim: (ERB_HANDLER.erb_trim_mode == "-")
  ).src
end