Module: Sprockets::EcoProcessor

Defined in:
lib/sprockets/eco_processor.rb

Overview

Processor engine class for the Eco compiler. Depends on the `eco` gem.

For more infomation see:

https://github.com/sstephenson/ruby-eco
https://github.com/sstephenson/eco

Constant Summary collapse

VERSION =
'1'

Class Method Summary collapse

Class Method Details

.cache_keyObject


15
16
17
# File 'lib/sprockets/eco_processor.rb', line 15

def self.cache_key
  @cache_key ||= "#{name}:#{Autoload::Eco::Source::VERSION}:#{VERSION}".freeze
end

.call(input) ⇒ Object

Compile template data with Eco compiler.

Returns a JS function definition String. The result should be assigned to a JS variable.

# => "function(...) {...}"

26
27
28
29
30
31
# File 'lib/sprockets/eco_processor.rb', line 26

def self.call(input)
  data = input[:data]
  input[:cache].fetch([cache_key, data]) do
    Autoload::Eco.compile(data)
  end
end