Class: Crush::Closure::Compiler

Inherits:
Engine
  • Object
show all
Defined in:
lib/crush/closure.rb

Instance Attribute Summary

Attributes inherited from Engine

#data, #file, #options

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Engine

#initialize, #render

Constructor Details

This class inherits a constructor from Crush::Engine

Class Method Details

.engine_initialized?Boolean

Returns:

  • (Boolean)


8
9
10
# File 'lib/crush/closure.rb', line 8

def self.engine_initialized?
  !!(defined? ::Closure) && !!(defined? ::Closure::Compiler)
end

.engine_nameObject



4
5
6
# File 'lib/crush/closure.rb', line 4

def self.engine_name
  "closure"
end

Instance Method Details

#evaluateObject



20
21
22
# File 'lib/crush/closure.rb', line 20

def evaluate
  @engine.compile(data)
end

#initialize_engineObject



12
13
14
# File 'lib/crush/closure.rb', line 12

def initialize_engine
  require_template_library "closure-compiler"
end

#prepareObject



16
17
18
# File 'lib/crush/closure.rb', line 16

def prepare
  @engine = ::Closure::Compiler.new(options)
end