class Brpoplpush::RedisScript::Template
Class Template
provides LUA script partial template rendering
@author Mikael Henriksson <mikael@mhenrixon.com>
Public Class Methods
new(script_path)
click to toggle source
# File lib/brpoplpush/redis_script/template.rb, line 16 def initialize(script_path) @script_path = script_path end
Public Instance Methods
include_partial(relative_path)
click to toggle source
helper method to include a lua partial within another lua script
# File lib/brpoplpush/redis_script/template.rb, line 35 def include_partial(relative_path) return if @partial_templates.key?(relative_path) @partial_templates[relative_path] = nil render(Pathname.new("#{@script_path}/#{relative_path}")) end
render(pathname)
click to toggle source
Renders a Lua script and includes any partials in that file
all `<%= include_partial '' %>` replaced with the actual contents of the partial
@param [Pathname] pathname the path to the
@return [String] the rendered Luascript
# File lib/brpoplpush/redis_script/template.rb, line 28 def render(pathname) @partial_templates ||= {} ::ERB.new(File.read(pathname)).result(binding) end