99#include < vector>
1010#include < string>
1111#include < uv.h>
12+ #include < nan.h>
1213
1314class Java ;
1415
@@ -60,7 +61,7 @@ JNIEnv* javaGetEnv(JavaVM* jvm, jobject classLoader);
6061jobject getSystemClassLoader (JNIEnv *env);
6162jvalueType javaGetArrayComponentType (JNIEnv *env, jobjectArray array);
6263jvalueType javaGetType (JNIEnv *env, jclass type);
63- jobjectArray v8ToJava (JNIEnv* env, const v8::Arguments& args, int start, int end);
64+ jobjectArray v8ToJava (JNIEnv* env, _NAN_METHOD_ARGS_TYPE args, int start, int end);
6465jobject v8ToJava (JNIEnv* env, v8::Local<v8::Value> arg);
6566v8::Handle<v8::Value> javaExceptionToV8 (Java* java, JNIEnv* env, const std::string& alternateMessage);
6667v8::Handle<v8::Value> javaExceptionToV8 (Java* java, JNIEnv* env, jthrowable ex, const std::string& alternateMessage);
@@ -76,15 +77,15 @@ jobject javaFindField(JNIEnv* env, jclass clazz, std::string& fieldName);
7677jobject javaFindMethod (JNIEnv *env, jclass clazz, std::string& methodName, jobjectArray methodArgs);
7778jobject javaFindConstructor (JNIEnv *env, jclass clazz, jobjectArray methodArgs);
7879
79- std::string methodNotFoundToString (JNIEnv *env, jclass clazz, std::string methodName, bool constructor, const v8::Arguments& args, int argStart, int argEnd);
80+ std::string methodNotFoundToString (JNIEnv *env, jclass clazz, std::string methodName, bool constructor, _NAN_METHOD_ARGS_TYPE args, int argStart, int argEnd);
8081
8182#define UNUSED_VARIABLE (var ) var = var;
8283
8384#define ARGS_FRONT_OBJECT (ARGNAME ) \
8485 if (args.Length() < argsStart+1 || !args[argsStart]->IsObject ()) { \
8586 std::ostringstream errStr; \
8687 errStr << " Argument " << (argsStart+1 ) << " must be an object" ; \
87- return ThrowException (v8::Exception::TypeError (v8::String::New (errStr.str ().c_str ()))); \
88+ return NanThrowError (v8::Exception::TypeError (v8::String::New (errStr.str ().c_str ()))); \
8889 } \
8990 v8::Local<v8::Object> ARGNAME = v8::Local<v8::Object>::Cast(args[argsStart]); \
9091 argsStart++;
@@ -93,11 +94,11 @@ std::string methodNotFoundToString(JNIEnv *env, jclass clazz, std::string method
9394 if (args.Length() < argsStart+1 || !args[argsStart]->IsString ()) { \
9495 std::ostringstream errStr; \
9596 errStr << " Argument " << (argsStart+1 ) << " must be a string" ; \
96- return ThrowException (v8::Exception::TypeError (v8::String::New (errStr.str ().c_str ()))); \
97+ return NanThrowError (v8::Exception::TypeError (v8::String::New (errStr.str ().c_str ()))); \
9798 } \
9899 v8::Local<v8::String> _##ARGNAME ##_obj = v8::Local<v8::String>::Cast(args[argsStart]); \
99100 v8::String::AsciiValue _##ARGNAME ##_val(_##ARGNAME ##_obj); \
100- std::string ARGNAME = *_##ARGNAME ##_val; \
101+ std::string ARGNAME = *_##ARGNAME ##_val; \
101102 argsStart++;
102103
103104#define ARGS_FRONT_CLASSNAME () ARGS_FRONT_STRING (className)
@@ -125,11 +126,11 @@ std::string methodNotFoundToString(JNIEnv *env, jclass clazz, std::string method
125126
126127#define END_CALLBACK_FUNCTION (MSG ) \
127128 if (callbackProvided) { \
128- return v8::Undefined (); \
129+ NanReturnUndefined (); \
129130 } else { \
130131 std::ostringstream str; \
131132 str << MSG ; \
132- return scope. Close (v8::String::New (str.str ().c_str ())); \
133+ NanReturnValue (v8::String::New (str.str ().c_str ())); \
133134 }
134135
135136#ifndef UNUSED_VARIABLE
0 commit comments