Sha256: c6b97ae293c0b615b7aa4e045fc0a00a55c201bb12987ae3d56115cc7bc92315

Contents?: true

Size: 470 Bytes

Versions: 8

Compression:

Stored size: 470 Bytes

Contents

class SmallCage::Renderer

  def initialize(loader)
    @loader = loader
  end

  def render(name, obj)
    path = @loader.template_path(name)
    return nil if path.nil?
    return render_string(path.read, obj)
  end
    
  def render_string(str, obj)
    erb_class = ERB.new(str, nil, '-', '@erbout').def_class(@loader.erb_base, "erb")
    return erb_class.new(@loader, self, obj).erb
  rescue => e
    STDERR.puts "Can't render: #{obj["uri"]}"
    raise e
  end

end

Version data entries

8 entries across 8 versions & 2 rubygems

Version Path
bluemark-smallcage-0.1.5 lib/smallcage/renderer.rb
smallcage-0.2.1 lib/smallcage/renderer.rb
smallcage-0.2.0 lib/smallcage/renderer.rb
smallcage-0.1.9 lib/smallcage/renderer.rb
smallcage-0.1.8 lib/smallcage/renderer.rb
smallcage-0.1.7 lib/smallcage/renderer.rb
smallcage-0.1.6 lib/smallcage/renderer.rb
smallcage-0.1.5 lib/smallcage/renderer.rb