summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard <richie765@gmail.com>2014-08-21 20:52:48 -0500
committerRichard <richie765@gmail.com>2014-08-28 19:46:50 -0500
commite0c0670540235420626649dadc86d96b676b5f19 (patch)
tree85f8e535b4038d4f16a8c91e1afa469e854aff72
parent98b1fca4d8e71dc25fec68906e193d74765db074 (diff)
downloadswig-e0c0670540235420626649dadc86d96b676b5f19.tar.gz
Partially fixed for 3.25.30 (0x032530) - unfinished
-rw-r--r--Lib/javascript/v8/javascriptcode.swg82
-rw-r--r--Lib/javascript/v8/javascriptcomplex.swg22
-rw-r--r--Lib/javascript/v8/javascripthelpers.swg24
-rw-r--r--Lib/javascript/v8/javascriptinit.swg16
-rw-r--r--Lib/javascript/v8/javascriptprimtypes.swg12
-rw-r--r--Lib/javascript/v8/javascriptrun.swg139
-rw-r--r--Lib/javascript/v8/javascriptstrings.swg6
-rw-r--r--Lib/javascript/v8/javascripttypemaps.swg2
8 files changed, 129 insertions, 174 deletions
diff --git a/Lib/javascript/v8/javascriptcode.swg b/Lib/javascript/v8/javascriptcode.swg
index 85e26d5f3..e82720e1c 100644
--- a/Lib/javascript/v8/javascriptcode.swg
+++ b/Lib/javascript/v8/javascriptcode.swg
@@ -9,11 +9,7 @@
%fragment("js_ctor", "templates") %{
SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
v8::Handle<v8::Object> self = args.Holder();
$jslocals
@@ -25,7 +21,7 @@ SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args) {
goto fail;
fail:
- SWIGV8_RETURN(v8::Undefined());
+ SWIGV8_RETURN(SWIGV8_UNDEFINED());
}
%}
@@ -37,14 +33,10 @@ fail:
%fragment ("js_veto_ctor", "templates")
%{
SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
SWIG_exception(SWIG_ERROR, "Class $jsname can not be instantiated");
- SWIGV8_RETURN(v8::Undefined());
+ SWIGV8_RETURN(SWIGV8_UNDEFINED());
}
%}
@@ -57,11 +49,7 @@ SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args) {
%fragment ("js_ctor_dispatcher", "templates")
%{
SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
OverloadErrorHandler errorHandler;
v8::Handle<v8::Value> self;
@@ -73,7 +61,7 @@ SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args) {
SWIG_exception_fail(SWIG_ERROR, "Illegal arguments for construction of $jsmangledname");
fail:
- SWIGV8_RETURN(v8::Undefined());
+ SWIGV8_RETURN(SWIGV8_UNDEFINED());
}
%}
@@ -87,11 +75,7 @@ fail:
* ----------------------------------------------------------------------------- */
%fragment("js_overloaded_ctor", "templates") %{
SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args, V8ErrorHandler& SWIGV8_ErrorHandler) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
v8::Handle<v8::Object> self = args.Holder();
$jslocals
@@ -103,7 +87,7 @@ SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args, V8ErrorHandler& SWIGV8
goto fail;
fail:
- SWIGV8_RETURN(v8::Undefined());
+ SWIGV8_RETURN(SWIGV8_UNDEFINED());
}
%}
@@ -118,10 +102,10 @@ fail:
%{
if(args.Length() == $jsargcount) {
errorHandler.err.Clear();
-#if SWIG_V8_VERSION < 0x031903
+#if (SWIG_V8_VERSION < 0x031903)
self = $jswrapper(args, errorHandler);
if(errorHandler.err.IsEmpty()) {
- return scope.Close(self);
+ SWIGV8_ESCAPE(self);
}
#else
$jswrapper(args, errorHandler);
@@ -221,11 +205,7 @@ void $jswrapper(v8::Isolate *isolate, v8::Persistent< v8::Object > * object, SWI
%fragment("js_getter", "templates")
%{
SwigV8ReturnValue $jswrapper(v8::Local<v8::String> property, const SwigV8PropertyCallbackInfo& info) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
v8::Handle<v8::Value> jsresult;
$jslocals
@@ -234,7 +214,7 @@ SwigV8ReturnValue $jswrapper(v8::Local<v8::String> property, const SwigV8Propert
goto fail;
fail:
- SWIGV8_RETURN_INFO(v8::Undefined(), info);
+ SWIGV8_RETURN_INFO(SWIGV8_UNDEFINED(), info);
}
%}
@@ -248,11 +228,7 @@ fail:
%{
void $jswrapper(v8::Local<v8::String> property, v8::Local<v8::Value> value,
const SwigV8PropertyCallbackInfoVoid& info) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
$jslocals
$jscode
@@ -271,11 +247,7 @@ fail:
%fragment("js_function", "templates")
%{
SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
v8::Handle<v8::Value> jsresult;
$jslocals
@@ -286,7 +258,7 @@ SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args) {
goto fail;
fail:
- SWIGV8_RETURN(v8::Undefined());
+ SWIGV8_RETURN(SWIGV8_UNDEFINED());
}
%}
@@ -300,11 +272,7 @@ fail:
%fragment("js_function_dispatcher", "templates")
%{
SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
v8::Handle<v8::Value> jsresult;
OverloadErrorHandler errorHandler;
@@ -314,7 +282,7 @@ SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args) {
goto fail;
fail:
- SWIGV8_RETURN(v8::Undefined());
+ SWIGV8_RETURN(SWIGV8_UNDEFINED());
}
%}
@@ -328,11 +296,7 @@ fail:
%{
SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args, V8ErrorHandler& SWIGV8_ErrorHandler)
{
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
v8::Handle<v8::Value> jsresult;
$jslocals
@@ -341,7 +305,7 @@ SwigV8ReturnValue $jswrapper(const SwigV8Arguments& args, V8ErrorHandler& SWIGV8
goto fail;
fail:
- SWIGV8_RETURN(v8::Undefined());
+ SWIGV8_RETURN(SWIGV8_UNDEFINED());
}
%}
@@ -359,7 +323,7 @@ fail:
#if (SWIG_V8_VERSION < 0x031903)
jsresult = $jswrapper(args, errorHandler);
if(errorHandler.err.IsEmpty()) {
- return scope.Close(jsresult);
+ SWIGV8_ESCAPE(jsresult);
}
#else
$jswrapper(args, errorHandler);
@@ -453,7 +417,7 @@ fail:
* ----------------------------------------------------------------------------- */
%fragment("jsv8_register_class", "templates")
%{
- $jsparent_obj->Set(v8::String::NewSymbol("$jsname"), $jsmangledname_obj);
+ $jsparent_obj->Set(SWIGV8_SYMBOL_NEW("$jsname"), $jsmangledname_obj);
%}
/* -----------------------------------------------------------------------------
@@ -462,7 +426,7 @@ fail:
* ----------------------------------------------------------------------------- */
%fragment("jsv8_create_namespace", "templates")
%{
- v8::Handle<v8::Object> $jsmangledname_obj = v8::Object::New();
+ v8::Handle<v8::Object> $jsmangledname_obj = SWIGV8_OBJECT_NEW();
%}
/* -----------------------------------------------------------------------------
@@ -473,7 +437,7 @@ fail:
* ----------------------------------------------------------------------------- */
%fragment("jsv8_register_namespace", "templates")
%{
- $jsparent_obj->Set(v8::String::NewSymbol("$jsname"), $jsmangledname_obj);
+ $jsparent_obj->Set(SWIGV8_SYMBOL_NEW("$jsname"), $jsmangledname_obj);
%}
/* -----------------------------------------------------------------------------
diff --git a/Lib/javascript/v8/javascriptcomplex.swg b/Lib/javascript/v8/javascriptcomplex.swg
index 88573c2f2..683b972bc 100644
--- a/Lib/javascript/v8/javascriptcomplex.swg
+++ b/Lib/javascript/v8/javascriptcomplex.swg
@@ -15,17 +15,13 @@
SWIGINTERNINLINE v8::Handle<v8::Value>
SWIG_From_dec(Type)(%ifcplusplus(const Type&, Type) c)
{
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE_ESC();
- v8::Local<v8::Array> vals = v8::Array::New(2);
+ v8::Local<v8::Array> vals = SWIGV8_ARRAY_NEW(2);
vals->Set(0, SWIG_From(double)(Real(c)));
vals->Set(1, SWIG_From(double)(Imag(c)));
- return scope.Close(vals);
+ SWIGV8_ESCAPE(vals);
}
}
%enddef
@@ -38,11 +34,7 @@ SWIG_From_dec(Type)(%ifcplusplus(const Type&, Type) c)
SWIGINTERN int
SWIG_AsVal_dec(Type) (v8::Handle<v8::Value> o, Type* val)
{
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
if (o->IsArray()) {
v8::Handle<v8::Array> array = v8::Handle<v8::Array>::Cast(o);
@@ -84,11 +76,7 @@ SWIG_AsVal_dec(Type) (v8::Handle<v8::Value> o, Type* val)
SWIGINTERN int
SWIG_AsVal_dec(Type) (v8::Handle<v8::Value> o, Type* val)
{
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
if (o->IsArray()) {
v8::Handle<v8::Array> array = v8::Handle<v8::Array>::Cast(o);
diff --git a/Lib/javascript/v8/javascripthelpers.swg b/Lib/javascript/v8/javascripthelpers.swg
index 630946d07..969225401 100644
--- a/Lib/javascript/v8/javascripthelpers.swg
+++ b/Lib/javascript/v8/javascripthelpers.swg
@@ -17,25 +17,21 @@ typedef v8::PropertyCallbackInfo<void> SwigV8PropertyCallbackInfoVoid;
* Creates a class template for a class with specified initialization function.
*/
SWIGRUNTIME v8::Handle<v8::FunctionTemplate> SWIGV8_CreateClassTemplate(const char* symbol) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE_ESC();
- v8::Local<v8::FunctionTemplate> class_templ = v8::FunctionTemplate::New();
- class_templ->SetClassName(v8::String::NewSymbol(symbol));
+ v8::Local<v8::FunctionTemplate> class_templ = SWIGV8_FUNCTEMPLATE_NEW_VOID();
+ class_templ->SetClassName(SWIGV8_SYMBOL_NEW(symbol));
v8::Handle<v8::ObjectTemplate> inst_templ = class_templ->InstanceTemplate();
inst_templ->SetInternalFieldCount(1);
v8::Handle<v8::ObjectTemplate> equals_templ = class_templ->PrototypeTemplate();
- equals_templ->Set(v8::String::NewSymbol("equals"), v8::FunctionTemplate::New(_SWIGV8_wrap_equals));
+ equals_templ->Set(SWIGV8_SYMBOL_NEW("equals"), SWIGV8_FUNCTEMPLATE_NEW(_SWIGV8_wrap_equals));
v8::Handle<v8::ObjectTemplate> cptr_templ = class_templ->PrototypeTemplate();
- cptr_templ->Set(v8::String::NewSymbol("getCPtr"), v8::FunctionTemplate::New(_wrap_getCPtr));
+ cptr_templ->Set(SWIGV8_SYMBOL_NEW("getCPtr"), SWIGV8_FUNCTEMPLATE_NEW(_wrap_getCPtr));
- return scope.Close(class_templ);
+ SWIGV8_ESCAPE(class_templ);
}
/**
@@ -44,7 +40,7 @@ SWIGRUNTIME v8::Handle<v8::FunctionTemplate> SWIGV8_CreateClassTemplate(const ch
SWIGRUNTIME void SWIGV8_AddMemberFunction(v8::Handle<v8::FunctionTemplate> class_templ, const char* symbol,
SwigV8FunctionCallback _func) {
v8::Handle<v8::ObjectTemplate> proto_templ = class_templ->PrototypeTemplate();
- proto_templ->Set(v8::String::NewSymbol(symbol), v8::FunctionTemplate::New(_func));
+ proto_templ->Set(SWIGV8_SYMBOL_NEW(symbol), SWIGV8_FUNCTEMPLATE_NEW(_func));
}
/**
@@ -53,7 +49,7 @@ SWIGRUNTIME void SWIGV8_AddMemberFunction(v8::Handle<v8::FunctionTemplate> class
SWIGRUNTIME void SWIGV8_AddMemberVariable(v8::Handle<v8::FunctionTemplate> class_templ, const char* symbol,
SwigV8AccessorGetterCallback getter, SwigV8AccessorSetterCallback setter) {
v8::Handle<v8::ObjectTemplate> proto_templ = class_templ->InstanceTemplate();
- proto_templ->SetAccessor(v8::String::NewSymbol(symbol), getter, setter);
+ proto_templ->SetAccessor(SWIGV8_SYMBOL_NEW(symbol), getter, setter);
}
/**
@@ -61,7 +57,7 @@ SWIGRUNTIME void SWIGV8_AddMemberVariable(v8::Handle<v8::FunctionTemplate> class
*/
SWIGRUNTIME void SWIGV8_AddStaticFunction(v8::Handle<v8::Object> obj, const char* symbol,
const SwigV8FunctionCallback& _func) {
- obj->Set(v8::String::NewSymbol(symbol), v8::FunctionTemplate::New(_func)->GetFunction());
+ obj->Set(SWIGV8_SYMBOL_NEW(symbol), SWIGV8_FUNCTEMPLATE_NEW(_func)->GetFunction());
}
/**
@@ -69,7 +65,7 @@ SWIGRUNTIME void SWIGV8_AddStaticFunction(v8::Handle<v8::Object> obj, const char
*/
SWIGRUNTIME void SWIGV8_AddStaticVariable(v8::Handle<v8::Object> obj, const char* symbol,
SwigV8AccessorGetterCallback getter, SwigV8AccessorSetterCallback setter) {
- obj->SetAccessor(v8::String::NewSymbol(symbol), getter, setter);
+ obj->SetAccessor(SWIGV8_SYMBOL_NEW(symbol), getter, setter);
}
SWIGRUNTIME void JS_veto_set_variable(v8::Local<v8::String> property, v8::Local<v8::Value> value,
diff --git a/Lib/javascript/v8/javascriptinit.swg b/Lib/javascript/v8/javascriptinit.swg
index 97b273dc1..03ea5e658 100644
--- a/Lib/javascript/v8/javascriptinit.swg
+++ b/Lib/javascript/v8/javascriptinit.swg
@@ -4,16 +4,16 @@
SWIGRUNTIME void
SWIG_V8_SetModule(void *, swig_module_info *swig_module) {
- v8::Local<v8::Object> global_obj = v8::Context::GetCurrent()->Global();
- v8::Local<v8::External> mod = v8::External::New(swig_module);
+ v8::Local<v8::Object> global_obj = SWIGV8_CURRENT_CONTEXT()->Global();
+ v8::Local<v8::External> mod = SWIGV8_EXTERNAL_NEW(swig_module);
assert(!mod.IsEmpty());
- global_obj->SetHiddenValue(v8::String::New("swig_module_info_data"), mod);
+ global_obj->SetHiddenValue(SWIGV8_STRING_NEW("swig_module_info_data"), mod);
}
SWIGRUNTIME swig_module_info *
SWIG_V8_GetModule(void *) {
- v8::Local<v8::Object> global_obj = v8::Context::GetCurrent()->Global();
- v8::Local<v8::Value> moduleinfo = global_obj->GetHiddenValue(v8::String::New("swig_module_info_data"));
+ v8::Local<v8::Object> global_obj = SWIGV8_CURRENT_CONTEXT()->Global();
+ v8::Local<v8::Value> moduleinfo = global_obj->GetHiddenValue(SWIGV8_STRING_NEW("swig_module_info_data"));
if (moduleinfo.IsEmpty())
{
@@ -61,11 +61,7 @@ void SWIGV8_INIT (v8::Handle<v8::Object> exports, v8::Handle<v8::Object> /*modul
{
SWIG_InitializeModule(static_cast<void *>(&exports));
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
v8::Handle<v8::Object> exports_obj = exports;
%}
diff --git a/Lib/javascript/v8/javascriptprimtypes.swg b/Lib/javascript/v8/javascriptprimtypes.swg
index 706a799b7..2bb03a35f 100644
--- a/Lib/javascript/v8/javascriptprimtypes.swg
+++ b/Lib/javascript/v8/javascriptprimtypes.swg
@@ -33,7 +33,7 @@ int SWIG_AsVal_dec(bool)(v8::Handle<v8::Value> obj, bool *val)
SWIGINTERNINLINE
v8::Handle<v8::Value> SWIG_From_dec(int)(int value)
{
- return v8::Int32::New(value);
+ return SWIGV8_INT32_NEW(value);
}
}
@@ -56,7 +56,7 @@ int SWIG_AsVal_dec(int)(v8::Handle<v8::Value> valRef, int* val)
SWIGINTERNINLINE
v8::Handle<v8::Value> SWIG_From_dec(long)(long value)
{
- return v8::Number::New(value);
+ return SWIGV8_NUMBER_NEW(value);
}
}
@@ -82,7 +82,7 @@ SWIGINTERNINLINE
v8::Handle<v8::Value> SWIG_From_dec(unsigned long)(unsigned long value)
{
return (value > LONG_MAX) ?
- v8::Integer::NewFromUnsigned(value) : v8::Integer::New(%numeric_cast(value,long));
+ SWIGV8_INTEGER_NEW_UNS(value) : SWIGV8_INTEGER_NEW(%numeric_cast(value,long));
}
}
@@ -116,7 +116,7 @@ int SWIG_AsVal_dec(unsigned long)(v8::Handle<v8::Value> obj, unsigned long *val)
SWIGINTERNINLINE
v8::Handle<v8::Value> SWIG_From_dec(long long)(long long value)
{
- return v8::Number::New(value);
+ return SWIGV8_NUMBER_NEW(value);
}
}
@@ -146,7 +146,7 @@ SWIGINTERNINLINE
v8::Handle<v8::Value> SWIG_From_dec(unsigned long long)(unsigned long long value)
{
return (value > LONG_MAX) ?
- v8::Integer::NewFromUnsigned(value) : v8::Integer::New(%numeric_cast(value,long));
+ SWIGV8_INTEGER_NEW_UNS(value) : SWIGV8_INTEGER_NEW(%numeric_cast(value,long));
}
}
@@ -179,7 +179,7 @@ int SWIG_AsVal_dec(unsigned long long)(v8::Handle<v8::Value> obj, unsigned long
SWIGINTERN
v8::Handle<v8::Value> SWIG_From_dec(double) (double val)
{
- return v8::Number::New(val);
+ return SWIGV8_NUMBER_NEW(val);
}
}
diff --git a/Lib/javascript/v8/javascriptrun.swg b/Lib/javascript/v8/javascriptrun.swg
index 311902378..bdedb25ac 100644
--- a/Lib/javascript/v8/javascriptrun.swg
+++ b/Lib/javascript/v8/javascriptrun.swg
@@ -9,7 +9,7 @@
#define SWIGV8_OVERLOAD false
void SWIG_V8_Raise(const char* msg) {
- v8::ThrowException(v8::Exception::Error(v8::String::New(msg)));
+ v8::ThrowException(v8::Exception::Error(SWIGV8_STRING_NEW(msg)));
}
/*
@@ -39,7 +39,7 @@ V8ErrorHandler SWIGV8_ErrorHandler;
class OverloadErrorHandler: public V8ErrorHandler {
public:
virtual void error(int code, const char* msg) {
- err = v8::Exception::Error(v8::String::New(msg));
+ err = v8::Exception::Error(SWIGV8_STRING_NEW(msg));
if(code != SWIG_TypeError) {
v8::ThrowException(err);
}
@@ -63,6 +63,55 @@ typedef v8::PropertyCallbackInfo<v8::Value> SwigV8PropertyCallbackInfo;
#define SWIGV8_RETURN_INFO(val, info) info.GetReturnValue().Set(val); return
#endif
+#if (SWIG_V8_VERSION < 0x032117)
+#define SWIGV8_HANDLESCOPE() v8::HandleScope scope
+#define SWIGV8_HANDLESCOPE_ESC() v8::HandleScope scope
+#define SWIGV8_ESCAPE(val) return scope.Close(val)
+#elif (SWIG_V8_VERSION < 0x032530)
+#define SWIGV8_HANDLESCOPE() v8::HandleScope scope(v8::Isolate::GetCurrent());
+#define SWIGV8_HANDLESCOPE_ESC() v8::HandleScope scope(v8::Isolate::GetCurrent());
+#define SWIGV8_ESCAPE(val) return scope.Close(val)
+#else
+#define SWIGV8_HANDLESCOPE() v8::HandleScope scope(v8::Isolate::GetCurrent());
+#define SWIGV8_HANDLESCOPE_ESC() v8::EscapableHandleScope scope(v8::Isolate::GetCurrent());
+#define SWIGV8_ESCAPE(val) return scope.Escape(val)
+#endif
+
+#if (SWIG_V8_VERSION < 0x032530)
+#define SWIGV8_CURRENT_CONTEXT() v8::Context::GetCurrent()
+#define SWIGV8_STRING_NEW(str) v8::String::New(str)
+#define SWIGV8_STRING_NEW2(cstr, len) v8::String::New(cstr, kNormalString, len)
+#define SWIGV8_FUNCTEMPLATE_NEW(func) v8::FunctionTemplate::New(func)
+#define SWIGV8_FUNCTEMPLATE_NEW_VOID() v8::FunctionTemplate::New()
+#define SWIGV8_OBJECT_NEW() v8::Object::New()
+#define SWIGV8_EXTERNAL_NEW(val) v8::External::New(val)
+#define SWIGV8_UNDEFINED() v8::Undefined()
+#define SWIGV8_NULL() v8::Null()
+#define SWIGV8_BOOLEAN_NEW(bool) v8::Boolean::New(bool)
+#define SWIGV8_ARRAY_NEW() v8::Array::New()
+#define SWIGV8_NUMBER_NEW(num) v8::Number::New(num)
+#define SWIGV8_SYMBOL_NEW(sym) v8::String::NewSymbol(sym)
+#define SWIGV8_INTEGER_NEW(num) v8::Integer::New(num)
+#define SWIGV8_INTEGER_NEW_UNS(num) v8::Integer::NewFromUnsigned(num)
+#define SWIGV8_INT32_NEW(num) v8::Int32::New(num)
+#else
+#define SWIGV8_CURRENT_CONTEXT() v8::Isolate::GetCurrent()->GetCurrentContext()
+#define SWIGV8_STRING_NEW(str) v8::String::NewFromUtf8(v8::Isolate::GetCurrent(), str)
+#define SWIGV8_STRING_NEW2(cstr, len) v8::String::NewFromUtf8(v8::Isolate::GetCurrent(), cstr, v8::String::kNormalString, len)
+#define SWIGV8_FUNCTEMPLATE_NEW(func) v8::FunctionTemplate::New(v8::Isolate::GetCurrent(), func)
+#define SWIGV8_FUNCTEMPLATE_NEW_VOID() v8::FunctionTemplate::New(v8::Isolate::GetCurrent())
+#define SWIGV8_OBJECT_NEW() v8::Object::New(v8::Isolate::GetCurrent())
+#define SWIGV8_EXTERNAL_NEW(val) v8::External::New(v8::Isolate::GetCurrent(), val)
+#define SWIGV8_UNDEFINED() v8::Undefined(v8::Isolate::GetCurrent())
+#define SWIGV8_NULL() v8::Null(v8::Isolate::GetCurrent())
+#define SWIGV8_BOOLEAN_NEW(bool) v8::Boolean::New(v8::Isolate::GetCurrent(), bool)
+#define SWIGV8_ARRAY_NEW() v8::Array::New(v8::Isolate::GetCurrent())
+#define SWIGV8_NUMBER_NEW(num) v8::Number::New(v8::Isolate::GetCurrent(), num)
+#define SWIGV8_SYMBOL_NEW(sym) v8::String::NewFromUtf8(v8::Isolate::GetCurrent(), sym)
+#define SWIGV8_INTEGER_NEW(num) v8::Integer::New(v8::Isolate::GetCurrent(), num)
+#define SWIGV8_INTEGER_NEW_UNS(num) v8::Integer::NewFromUnsigned(v8::Isolate::GetCurrent(), num)
+#define SWIGV8_INT32_NEW(num) v8::Int32::New(v8::Isolate::GetCurrent(), num)
+#endif
/* ---------------------------------------------------------------------------
* Basic Proxy object
@@ -117,11 +166,7 @@ public:
v8::Persistent<v8::FunctionTemplate> SWIGV8_SWIGTYPE_Proxy_class_templ;
int SWIG_V8_ConvertInstancePtr(v8::Handle<v8::Object> objRef, void** ptr, swig_type_info *info, int flags) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
if(objRef->InternalFieldCount() < 1) return SWIG_ERROR;
@@ -243,11 +288,7 @@ void SWIGV8_SetPrivateData(v8::Handle<v8::Object> obj, void* ptr, swig_type_info
}
int SWIG_V8_ConvertPtr(v8::Handle<v8::Value> valRef, void** ptr, swig_type_info *info, int flags) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
/* special case: JavaScript null => C NULL pointer */
if(valRef->IsNull()) {
@@ -262,16 +303,12 @@ int SWIG_V8_ConvertPtr(v8::Handle<v8::Value> valRef, void** ptr, swig_type_info
}
v8::Handle<v8::Value> SWIG_V8_NewPointerObj(void *ptr, swig_type_info *info, int flags) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE_ESC();
v8::Handle<v8::FunctionTemplate> class_templ;
if (ptr == NULL) {
- return scope.Close(v8::Null());
+ SWIGV8_ESCAPE(SWIGV8_NULL);
}
#if (SWIG_V8_VERSION < 0x031903)
@@ -293,7 +330,7 @@ v8::Handle<v8::Value> SWIG_V8_NewPointerObj(void *ptr, swig_type_info *info, int
v8::Handle<v8::Object> result = class_templ->InstanceTemplate()->NewInstance();
SWIGV8_SetPrivateData(result, ptr, info, flags);
- return scope.Close(result);
+ SWIGV8_ESCAPE(result);
}
#define SWIG_ConvertPtr(obj, ptr, info, flags) SWIG_V8_ConvertPtr(obj, ptr, info, flags)
@@ -308,12 +345,7 @@ v8::Handle<v8::Value> SWIG_V8_NewPointerObj(void *ptr, swig_type_info *info, int
#define SWIG_GetInstancePtr(obj, ptr) SWIG_V8_GetInstancePtr(obj, ptr)
SwigV8ReturnValue _SWIGV8_wrap_equals(const SwigV8Arguments &args) {
-
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
v8::Handle<v8::Value> jsresult;
void *arg1 = (void *) 0 ;
@@ -334,21 +366,16 @@ SwigV8ReturnValue _SWIGV8_wrap_equals(const SwigV8Arguments &args) {
}
result = (bool)(arg1 == arg2);
- jsresult = v8::Boolean::New(result);
+ jsresult = SWIGV8_BOOLEAN_NEW(result);
SWIGV8_RETURN(jsresult);
goto fail;
fail:
- SWIGV8_RETURN(v8::Undefined());
+ SWIGV8_RETURN(SWIGV8_UNDEFINED());
}
SwigV8ReturnValue _wrap_getCPtr(const SwigV8Arguments &args) {
-
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
v8::Handle<v8::Value> jsresult;
void *arg1 = (void *) 0 ;
@@ -361,12 +388,12 @@ SwigV8ReturnValue _wrap_getCPtr(const SwigV8Arguments &args) {
}
result = (long)arg1;
- jsresult = v8::Number::New(result);
+ jsresult = SWIGV8_NUMBER_NEW(result);
SWIGV8_RETURN(jsresult);
goto fail;
fail:
- SWIGV8_RETURN(v8::Undefined());
+ SWIGV8_RETURN(SWIGV8_UNDEFINED());
}
/* ---------------------------------------------------------------------------
@@ -390,28 +417,18 @@ public:
SWIGRUNTIMEINLINE
int SwigV8Packed_Check(v8::Handle<v8::Value> valRef) {
-
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
v8::Handle<v8::Object> objRef = valRef->ToObject();
if(objRef->InternalFieldCount() < 1) return false;
- v8::Handle<v8::Value> flag = objRef->GetHiddenValue(v8::String::New("__swig__packed_data__"));
+ v8::Handle<v8::Value> flag = objRef->GetHiddenValue(SWIGV8_STRING_NEW("__swig__packed_data__"));
return (flag->IsBoolean() && flag->BooleanValue());
}
SWIGRUNTIME
swig_type_info* SwigV8Packed_UnpackData(v8::Handle<v8::Value> valRef, void *ptr, size_t size) {
if (SwigV8Packed_Check(valRef)) {
-
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE();
SwigV8PackedData *sobj;
@@ -475,16 +492,12 @@ void _wrap_SwigV8PackedData_delete(v8::Isolate *isolate, v8::Persistent< v8::Obj
SWIGRUNTIME
v8::Handle<v8::Value> SWIGV8_NewPackedObj(void *data, size_t size, swig_type_info *type) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE_ESC();
SwigV8PackedData* cdata = new SwigV8PackedData(data, size, type);
- v8::Handle<v8::Object> obj = v8::Object::New();
+ v8::Handle<v8::Object> obj = SWIGV8_OBJECT_NEW();
- obj->SetHiddenValue(v8::String::New("__swig__packed_data__"), v8::Boolean::New(true));
+ obj->SetHiddenValue(SWIGV8_STRING_NEW("__swig__packed_data__"), SWIGV8_BOOLEAN_NEW(true));
#if (SWIG_V8_VERSION < 0x031511)
obj->SetPointerInInternalField(0, cdata);
@@ -505,8 +518,10 @@ v8::Handle<v8::Value> SWIGV8_NewPackedObj(void *data, size_t size, swig_type_inf
cdata->handle.MakeWeak(cdata, _wrap_SwigV8PackedData_delete);
#elif (SWIG_V8_VERSION < 0x031918)
cdata->handle.MakeWeak(v8::Isolate::GetCurrent(), cdata, _wrap_SwigV8PackedData_delete);
-#else
+#elif (SWIG_V8_VERSION < 0x032530)
cdata->handle.MakeWeak(cdata, _wrap_SwigV8PackedData_delete);
+#else
+ v8::V8::MakeWeak(&cdata->handle, cdata, _wrap_SwigV8PackedData_delete);
#endif
#if (SWIG_V8_VERSION < 0x031710)
@@ -517,7 +532,7 @@ v8::Handle<v8::Value> SWIGV8_NewPackedObj(void *data, size_t size, swig_type_inf
cdata->handle.MarkIndependent();
#endif
- return scope.Close(obj);
+ SWIGV8_ESCAPE(obj);
}
#define SWIG_ConvertMember(obj, ptr, sz, ty) SWIGV8_ConvertPacked(obj, ptr, sz, ty)
@@ -531,17 +546,13 @@ v8::Handle<v8::Value> SWIGV8_NewPackedObj(void *data, size_t size, swig_type_inf
SWIGRUNTIME
v8::Handle<v8::Value> SWIGV8_AppendOutput(v8::Handle<v8::Value> result, v8::Handle<v8::Value> obj) {
-#if (SWIG_V8_VERSION < 0x032117)
- v8::HandleScope scope;
-#else
- v8::HandleScope scope(v8::Isolate::GetCurrent());
-#endif
+ SWIGV8_HANDLESCOPE_ESC();
if (result->IsUndefined()) {
- result = v8::Array::New();
+ result = SWIGV8_ARRAY_NEW();
}
v8::Handle<v8::Array> arr = v8::Handle<v8::Array>::Cast(result);
arr->Set(arr->Length(), obj);
- return scope.Close(arr);
+ SWIGV8_ESCAPE(arr);
}
diff --git a/Lib/javascript/v8/javascriptstrings.swg b/Lib/javascript/v8/javascriptstrings.swg
index 69b6836a8..65ba20e5a 100644
--- a/Lib/javascript/v8/javascriptstrings.swg
+++ b/Lib/javascript/v8/javascriptstrings.swg
@@ -47,13 +47,13 @@ SWIG_FromCharPtrAndSize(const char* carray, size_t size)
if (carray) {
if (size > INT_MAX) {
// TODO: handle extra long strings
- return v8::Undefined();
+ return SWIGV8_UNDEFINED();
} else {
- v8::Handle<v8::String> js_str = v8::String::New(carray, size);
+ v8::Handle<v8::String> js_str = SWIGV8_STRING_NEW2(carray, size);
return js_str;
}
} else {
- return v8::Undefined();
+ return SWIGV8_UNDEFINED();
}
}
}
diff --git a/Lib/javascript/v8/javascripttypemaps.swg b/Lib/javascript/v8/javascripttypemaps.swg
index 90317a1c7..4601698e0 100644
--- a/Lib/javascript/v8/javascripttypemaps.swg
+++ b/Lib/javascript/v8/javascripttypemaps.swg
@@ -26,7 +26,7 @@
/* Javascript types */
#define SWIG_Object v8::Handle<v8::Value>
-#define VOID_Object v8::Undefined()
+#define VOID_Object SWIGV8_UNDEFINED()
/* Overload of the output/constant/exception/dirout handling */