mirror of
https://github.com/rubyjs/therubyracer
synced 2023-03-27 23:21:42 -04:00
Remove dependency on a GCC C++ extension
This commit is contained in:
parent
032c8fbc02
commit
7370e20630
1 changed files with 5 additions and 4 deletions
|
@ -1,4 +1,5 @@
|
||||||
|
|
||||||
|
#include <vector>
|
||||||
#include "v8_function.h"
|
#include "v8_function.h"
|
||||||
#include "v8_object.h"
|
#include "v8_object.h"
|
||||||
#include "v8_handle.h"
|
#include "v8_handle.h"
|
||||||
|
@ -21,11 +22,11 @@ namespace {
|
||||||
Local<Object> thisObj = rr_rb2v8(recv)->ToObject();
|
Local<Object> thisObj = rr_rb2v8(recv)->ToObject();
|
||||||
Handle<Array> args = rr_v8_handle<Array>(arguments);
|
Handle<Array> args = rr_v8_handle<Array>(arguments);
|
||||||
int argc = args->Length();
|
int argc = args->Length();
|
||||||
Handle<Value> argv[argc];
|
std::vector< Handle<Value> > argv (argc);
|
||||||
for (int i = 0; i < argc; i++) {
|
for (int i = 0; i < argc; i++) {
|
||||||
argv[i] = args->Get(i);
|
argv[i] = args->Get(i);
|
||||||
}
|
}
|
||||||
return rr_v82rb(function->Call(thisObj, argc, argv));
|
return rr_v82rb(function->Call(thisObj, argc, &argv[0]));
|
||||||
}
|
}
|
||||||
|
|
||||||
VALUE NewInstance(VALUE self, VALUE arguments) {
|
VALUE NewInstance(VALUE self, VALUE arguments) {
|
||||||
|
@ -33,11 +34,11 @@ namespace {
|
||||||
Handle<Function> function = unwrap(self);
|
Handle<Function> function = unwrap(self);
|
||||||
Handle<Array> args = rr_v8_handle<Array>(arguments);
|
Handle<Array> args = rr_v8_handle<Array>(arguments);
|
||||||
int argc = args->Length();
|
int argc = args->Length();
|
||||||
Handle<Value> argv[argc];
|
std::vector< Handle<Value> > argv (argc);
|
||||||
for (int i = 0; i < argc; i++) {
|
for (int i = 0; i < argc; i++) {
|
||||||
argv[i] = args->Get(i);
|
argv[i] = args->Get(i);
|
||||||
}
|
}
|
||||||
return rr_v82rb(function->NewInstance(argc, argv));
|
return rr_v82rb(function->NewInstance(argc, &argv[0]));
|
||||||
}
|
}
|
||||||
VALUE GetName(VALUE self) {
|
VALUE GetName(VALUE self) {
|
||||||
HandleScope scope;
|
HandleScope scope;
|
||||||
|
|
Loading…
Add table
Reference in a new issue