class L::Template::TargetRenderer

Public Class Methods

new(inp, out, values) click to toggle source
Calls superclass method R::TargetSmart::new
# File lib/rub/l/template.rb, line 44
def initialize(inp, out, values)
        super()
        
        @template = inp
        @resultf  = out
        
        if inp.is_a? Pathname
                input << inp
        end
        output << out
        
        @renderer = Renderer.new values
end

Public Instance Methods

build_self() click to toggle source
# File lib/rub/l/template.rb, line 58
def build_self
        r = if @template.is_a? String
                @renderer.render @template
        else
                @renderer.render_file @template
        end
        
        @resultf.dirname.mkpath
        @resultf.open('w') do |f|
                f.write r
        end
        
        bs = R::BuildStep.new
        bs.desc = "Rendering #{@resultf}"
        bs.print
end