Class: NodeModule::OpalJsContext

Inherits:
V8::Context
  • Object
show all
Defined in:
lib/node_module/opal_js_context.rb

Instance Method Summary collapse

Constructor Details

#initializeOpalJsContext

Returns a new instance of OpalJsContext.



7
8
9
10
11
# File 'lib/node_module/opal_js_context.rb', line 7

def initialize
  super do |ctx|
    ctx.eval Opal::Builder.build('opal')
  end
end

Instance Method Details

#compile(code) ⇒ Object



13
14
15
# File 'lib/node_module/opal_js_context.rb', line 13

def compile(code)
  eval Opal.compile(code)
end

#run(name, args = []) ⇒ Object



17
18
19
20
21
# File 'lib/node_module/opal_js_context.rb', line 17

def run(name, args=[])
  eval <<-JS
    Opal.Object['$#{name}'].apply(Opal.Object, #{args.to_json})
  JS
end