# File lib/less/java_script/v8_context.rb, line 14 def self.instance return new end
# File lib/less/java_script/v8_context.rb, line 18 def initialize(globals = nil) lock do @v8_context = V8::Context.new globals.each { |key, val| @v8_context[key] = val } if globals end end
# File lib/less/java_script/v8_context.rb, line 41 def call(properties, *args) args.last.is_a?(::Hash) ? args.pop : nil # extract_options! lock do @v8_context.eval(properties).call(*args) end end
# File lib/less/java_script/v8_context.rb, line 33 def eval(source, options = nil) # passing options not supported source = source.encode('UTF-8') if source.respond_to?(:encode) lock do @v8_context.eval("(#{source})") end end
# File lib/less/java_script/v8_context.rb, line 29 def exec(&block) lock(&block) end
# File lib/less/java_script/v8_context.rb, line 49 def method_missing(symbol, *args) if @v8_context.respond_to?(symbol) @v8_context.send(symbol, *args) else super end end
# File lib/less/java_script/v8_context.rb, line 25 def unwrap @v8_context end