class MagLove::Tilt::CoffeeTemplate
Public Class Methods
engine_initialized?()
click to toggle source
# File lib/maglove/tilt/coffee_template.rb, line 6 def self.engine_initialized? defined? ::CoffeeScript end
Public Instance Methods
allows_script?()
click to toggle source
# File lib/maglove/tilt/coffee_template.rb, line 43 def allows_script? false end
evaluate(scope, locals, &block)
click to toggle source
# File lib/maglove/tilt/coffee_template.rb, line 18 def evaluate(scope, locals, &block) @output = CoffeeScript.compile(@data, options) # handle includes @output.gsub!(/^include\("([^"]+)"\);$/) do |match| path = Regexp.last_match[1] path = "#{path}.coffee" if File.extname(path).empty? include_path = File.absolute_path(path, File.dirname(file)) # check if base path exists unless File.exist?(include_path) include_path = File.absolute_path(path, locals[:base_path]) end if File.exist?(include_path) include_template = ::Tilt.new(include_path) include_template.render(Object.new, locals) else raise "Path not found: #{include_path}" end end @output end
initialize_engine()
click to toggle source
# File lib/maglove/tilt/coffee_template.rb, line 10 def initialize_engine require_template_library 'coffee_script' end
prepare()
click to toggle source
# File lib/maglove/tilt/coffee_template.rb, line 14 def prepare options[:bare] = true end