Class: RiotJs::Rails::Compiler
- Inherits:
-
Object
- Object
- RiotJs::Rails::Compiler
- Includes:
- ActionView::Helpers::JavaScriptHelper
- Defined in:
- lib/riot_js/rails/processors/compiler.rb
Constant Summary collapse
- JS_RUNTIME =
::ExecJS::ExternalRuntime.new( name: 'Node.js (V8)', command: ['nodejs', 'node'], encoding: 'UTF-8', runner_path: File.('../../../../../vendor/assets/javascripts/compiler/node_runner.js', __FILE__), )
- RIOT_COMPILER_PATH =
File.('../../../../../vendor/assets/javascripts/compiler/compiler.js', __FILE__)
Class Method Summary collapse
Instance Method Summary collapse
Class Method Details
.compile(tag_source) ⇒ Object
23 24 25 |
# File 'lib/riot_js/rails/processors/compiler.rb', line 23 def self.compile(tag_source) instance.compile(tag_source) end |
.instance ⇒ Object
19 20 21 |
# File 'lib/riot_js/rails/processors/compiler.rb', line 19 def self.instance @@instance ||= new end |
Instance Method Details
#compile(tag_source) ⇒ Object
27 28 29 30 31 32 33 34 |
# File 'lib/riot_js/rails/processors/compiler.rb', line 27 def compile(tag_source) compiler_source = <<-JS var compiler = require("#{RIOT_COMPILER_PATH}"); return compiler.compile("#{escape_javascript(tag_source)}"); JS JS_RUNTIME.exec(compiler_source) end |