Sha256: bca81b99901f5ca592dbc9e01dda6c91797e667af0d49ed585b667c2167e75ff

Contents?: true

Size: 763 Bytes

Versions: 3

Compression:

Stored size: 763 Bytes

Contents

# encoding: utf-8
module Filegen
  # Generator for ruby code
  class Rubygen
    # Generate text
    #
    # @param [String] source
    #   The template used
    # @param [Hash] data
    #   The data used within template evaluation
    # @return [String]
    #   The evaluated template
    def run(source, data)
      result = StringIO.new
      source = StringIO.new(source)

      begin
        generator = ErbGenerator.new(Data.new([HashWithIndifferentAccess.new(data)]))
        generator.compile(source, result)
      rescue RuntimeError => e
        Filegen::Ui.error e.message
      rescue Exceptions::ErbTemplateHasSyntaxErrors => e
        Filegen::Ui.error "Syntax error in ERB-Template: \n" + e.message
      end

      result.string
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
filegen-0.4.3 lib/filegen/rubygen.rb
filegen-0.4.1 lib/filegen/rubygen.rb
filegen-0.4.0 lib/filegen/rubygen.rb