Sha256: 6cb1df59029e2d64964aec3fdf67b8fef9d57a3e1e17c9c8f27566d478732615

Contents?: true

Size: 659 Bytes

Versions: 2

Compression:

Stored size: 659 Bytes

Contents

module Pancake
  module Mixins
    module Render
      class Template
        class UnamedTemplate < Pancake::Errors::NotFound; end
        class NotFound       < Pancake::Errors::NotFound; end

        attr_reader :name, :path, :renderer, :owner

        def initialize(name, owner, path)
          @name, @owner, @path = name, owner, path
          raise UnamedTemplate unless name
          raise NotFound unless File.exists?(path)
          @renderer = Tilt.new(path)
        end

        def render(context = ViewContext.new, opts = {})
          @renderer.render(context, opts)
        end
      end #Template
    end #Render
  end #Mixins
end #Pancake

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
pancake-0.3.0 lib/pancake/mixins/render/template.rb
pancake-0.2.0 lib/pancake/mixins/render/template.rb