Sha256: 4863a3a696fcb09f07bef7c08093e831a2546886d43575af58d247e2fb96a7d1

Contents?: true

Size: 653 Bytes

Versions: 4

Compression:

Stored size: 653 Bytes

Contents

require 'erb'

module Vedeu

  # Generic class to loading a template and parsing it via ERb.
  #
  class Template

    # @param object [Class]
    # @param path [String]
    # @return [void]
    def self.parse(object, path)
      new(object, path).parse
    end

    # @param object [Class]
    # @param path [String]
    # @return [Template]
    def initialize(object, path)
      @object, @path = object, path
    end

    # @return [void]
    def parse
      ERB.new(load, nil, '-').result(binding)
    end

    private

    attr_reader :object, :path

    # @return [String]
    def load
      File.read(path)
    end

  end # Template

end # Vedeu

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
vedeu-0.4.5 lib/vedeu/support/template.rb
vedeu-0.4.4 lib/vedeu/support/template.rb
vedeu-0.4.3 lib/vedeu/support/template.rb
vedeu-0.4.2 lib/vedeu/support/template.rb