34 return GetReturnValue<v8::Value>(
isolate);
38 #define WRITE_CALL_0(Function, ReturnValue) \
39 v8::Handle<ReturnValue> PropertyCallbackArguments::Call(Function f) { \
40 Isolate* isolate = this->isolate(); \
41 VMState<EXTERNAL> state(isolate); \
42 ExternalCallbackScope call_scope(isolate, FUNCTION_ADDR(f)); \
43 PropertyCallbackInfo<ReturnValue> info(begin()); \
45 return GetReturnValue<ReturnValue>(isolate); \
49 #define WRITE_CALL_1(Function, ReturnValue, Arg1) \
50 v8::Handle<ReturnValue> PropertyCallbackArguments::Call(Function f, \
52 Isolate* isolate = this->isolate(); \
53 VMState<EXTERNAL> state(isolate); \
54 ExternalCallbackScope call_scope(isolate, FUNCTION_ADDR(f)); \
55 PropertyCallbackInfo<ReturnValue> info(begin()); \
57 return GetReturnValue<ReturnValue>(isolate); \
61 #define WRITE_CALL_2(Function, ReturnValue, Arg1, Arg2) \
62 v8::Handle<ReturnValue> PropertyCallbackArguments::Call(Function f, \
65 Isolate* isolate = this->isolate(); \
66 VMState<EXTERNAL> state(isolate); \
67 ExternalCallbackScope call_scope(isolate, FUNCTION_ADDR(f)); \
68 PropertyCallbackInfo<ReturnValue> info(begin()); \
69 f(arg1, arg2, info); \
70 return GetReturnValue<ReturnValue>(isolate); \
74 #define WRITE_CALL_2_VOID(Function, ReturnValue, Arg1, Arg2) \
75 void PropertyCallbackArguments::Call(Function f, \
78 Isolate* isolate = this->isolate(); \
79 VMState<EXTERNAL> state(isolate); \
80 ExternalCallbackScope call_scope(isolate, FUNCTION_ADDR(f)); \
81 PropertyCallbackInfo<ReturnValue> info(begin()); \
82 f(arg1, arg2, info); \
94 #undef WRITE_CALL_2_VOID
101 return x1 * 1.01 + x2 * 2.02 + x3 * 3.03 + x4 * 4.04;
#define WRITE_CALL_0(Function, ReturnValue)
#define WRITE_CALL_1(Function, ReturnValue, Arg1)
#define WRITE_CALL_2(Function, ReturnValue, Arg1, Arg2)
#define WRITE_CALL_2_VOID(Function, ReturnValue, Arg1, Arg2)
#define FOR_EACH_CALLBACK_TABLE_MAPPING_2(F)
#define FOR_EACH_CALLBACK_TABLE_MAPPING_2_VOID_RETURN(F)
#define FOR_EACH_CALLBACK_TABLE_MAPPING_0(F)
#define FOR_EACH_CALLBACK_TABLE_MAPPING_1(F)
The argument information given to function call callbacks.
An object reference managed by the v8 garbage collector.
v8::Handle< V > GetReturnValue(Isolate *isolate)
v8::Handle< v8::Value > Call(FunctionCallback f)
internal::Object ** argv_
double ClobberDoubleRegisters(double x1, double x2, double x3, double x4)
Handle< T > handle(T *t, Isolate *isolate)
Debugger support for the V8 JavaScript engine.
void(* FunctionCallback)(const FunctionCallbackInfo< Value > &info)