Method: JavaScript::Function#to_proc

Defined in:
lib/javascript.rb

#to_procObject



262
263
264
265
266
267
268
269
270
271
272
# File 'lib/javascript.rb', line 262

def to_proc
  parent_scope = @scope
  arg_names    = args.map(&:name)
  unwrapped    = body

  FunctionWrapper.new(arg_names) do |*arg_values|
    locals = Hash[ arg_names.zip(arg_values) ]
    locals[:arguments] = arg_values
    parent_scope.__spawn__(self, locals).__eval__(*arg_values, &unwrapped)
  end
end