Sha256: 4241dbd828e2cd4231e5e0c54938c98022a63e0f472a01e92d88fc799f9873ba

Contents?: true

Size: 638 Bytes

Versions: 11

Compression:

Stored size: 638 Bytes

Contents

# Based on https://github.com/josh/ruby-coffee-script
require 'execjs'
require 'pathname'

module HoganAssets
  class Hogan
    class << self
      def compile(source, options = {})
        context.eval("Hogan.compile(#{source.inspect}, {asString: true})")
      end

      private

      def context
        @context ||= ExecJS.compile(source)
      end

      def source
        @source ||= path.read
      end

      def path
        @path ||= assets_path.join('javascripts', 'hogan.js')
      end

      def assets_path
        @assets_path ||= Pathname(__FILE__).dirname.join('..','..','vendor','assets')
      end
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
hogan_assets-1.6.0 lib/hogan_assets/hogan.rb
hogan_assets-1.5.1 lib/hogan_assets/hogan.rb
hogan_assets-1.5.0 lib/hogan_assets/hogan.rb
hogan_assets-1.4.0 lib/hogan_assets/hogan.rb
hogan_assets-1.3.4 lib/hogan_assets/hogan.rb
hogan_assets-1.3.3 lib/hogan_assets/hogan.rb
hogan_assets-1.3.2 lib/hogan_assets/hogan.rb
hogan_assets-1.3.1 lib/hogan_assets/hogan.rb
hogan_assets-1.3.0 lib/hogan_assets/hogan.rb
hogan_assets-1.2.0 lib/hogan_assets/hogan.rb
hogan_assets-1.1.0 lib/hogan_assets/hogan.rb