Sha256: 4449dc32e51587ed6d4b345d298d3e5fea4fcd8c292d61891728fed087188f16
Contents?: true
Size: 1.07 KB
Versions: 1
Compression:
Stored size: 1.07 KB
Contents
module Lhj class ErbTemplateHelper require "erb" def self.load(template_name) path = "#{Lhj::Config.instance.home_dir}/#{template_name}.erb" load_from_path(path) end def self.load_from_path(template_filepath) unless File.exist?(template_filepath) UI.user_error!("Could not find template at path '#{template_filepath}'") end File.read(template_filepath) end def self.render(template, template_vars_hash, trim_mode = nil) Lhj::ErbalT.new(template_vars_hash, trim_mode).render(template) end end class ErbalT < OpenStruct def initialize(hash, trim_mode = nil) super(hash) @trim_mode = trim_mode end def render(template) # From Ruby 2.6, ERB.new takes keyword arguments and positional ones are deprecated # https://bugs.ruby-lang.org/issues/14256 if Gem::Version.new(RUBY_VERSION) >= Gem::Version.new("2.6.0") ERB.new(template, trim_mode: @trim_mode).result(binding) else ERB.new(template, nil, @trim_mode).result(binding) end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
lhj-tools-0.2.16 | lib/lhj/helper/erb_template_helper.rb |