Skip to content

Commit

Permalink
Removed NAN_MODULE_INIT and added NAN_MODULE
Browse files Browse the repository at this point in the history
  • Loading branch information
kkoopa committed Oct 10, 2015
1 parent 522aa35 commit 5f77093
Show file tree
Hide file tree
Showing 36 changed files with 103 additions and 84 deletions.
31 changes: 25 additions & 6 deletions nan.h
Original file line number Diff line number Diff line change
Expand Up @@ -136,15 +136,34 @@ namespace Nan {

//=== RegistrationFunction =====================================================

typedef void (*addon_reg_func_t)(v8::Local<v8::Object> target);

#if NODE_MODULE_VERSION < NODE_0_12_MODULE_VERSION
namespace imp {
template<addon_reg_func_t F>
static inline void addon_reg_func(v8::Handle<v8::Object> target) {
v8::HandleScope scope;
F(v8::Local<v8::Object>::New(target));
}
}
#elif NODE_MODULE_VERSION < IOJS_3_0_MODULE_VERSION
namespace imp {
template<addon_reg_func_t F>
static inline void addon_reg_func(v8::Handle<v8::Object> target) {
v8::Isolate *isolate = v8::Isolate::GetCurrent();
v8::HandleScope scope(isolate);
F(v8::Local<v8::Object>::New(isolate, target));
}
}
#endif

#if NODE_MODULE_VERSION < IOJS_3_0_MODULE_VERSION
typedef v8::Handle<v8::Object> ADDON_REGISTER_FUNCTION_ARGS_TYPE;
# define NAN_MODULE(modname, regfunc) \
NODE_MODULE(modname, Nan::imp::addon_reg_func<regfunc>)
#else
typedef v8::Local<v8::Object> ADDON_REGISTER_FUNCTION_ARGS_TYPE;
# define NAN_MODULE(modname, regfunc) NODE_MODULE(modname, regfunc)
#endif

#define NAN_MODULE_INIT(name) \
void name(Nan::ADDON_REGISTER_FUNCTION_ARGS_TYPE target)

//=== CallbackInfo =============================================================

#include "nan_callbacks.h" // NOLINT(build/include)
Expand Down Expand Up @@ -2171,7 +2190,7 @@ inline void SetCallAsFunctionHandler(

inline
void
Export(ADDON_REGISTER_FUNCTION_ARGS_TYPE target, const char *name,
Export(v8::Local<v8::Object> target, const char *name,
FunctionCallback f) {
Set(target, New<v8::String>(name).ToLocalChecked(),
GetFunction(New<v8::FunctionTemplate>(f)).ToLocalChecked());
Expand Down
6 changes: 3 additions & 3 deletions test/cpp/accessors.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ using namespace Nan; // NOLINT(build/namespaces)

class SetterGetter : public ObjectWrap {
public:
static NAN_MODULE_INIT(Init);
static void Init(v8::Local<v8::Object> target);
static v8::Local<v8::Value> NewInstance ();
static NAN_METHOD(New);
static NAN_METHOD(Log);
Expand Down Expand Up @@ -41,7 +41,7 @@ SetterGetter::SetterGetter() {
prop2[0] = '\0';
}

NAN_MODULE_INIT(SetterGetter::Init) {
void SetterGetter::Init(v8::Local<v8::Object> target) {
v8::Local<v8::FunctionTemplate> tpl =
Nan::New<v8::FunctionTemplate>(SetterGetter::New);
settergetter_constructor.Reset(tpl);
Expand Down Expand Up @@ -162,4 +162,4 @@ NAN_METHOD(SetterGetter::Log) {
info.GetReturnValue().Set(Nan::New(settergetter->log).ToLocalChecked());
}

NODE_MODULE(accessors, SetterGetter::Init)
NAN_MODULE(accessors, SetterGetter::Init)
6 changes: 3 additions & 3 deletions test/cpp/accessors2.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ using namespace Nan; // NOLINT(build/namespaces)

class SetterGetter : public ObjectWrap {
public:
static NAN_MODULE_INIT(Init);
static void Init(v8::Local<v8::Object> target);
static v8::Local<v8::Value> NewInstance ();
static NAN_METHOD(New);
static NAN_METHOD(Log);
Expand Down Expand Up @@ -41,7 +41,7 @@ SetterGetter::SetterGetter() {
prop2[0] = '\0';
}

NAN_MODULE_INIT(SetterGetter::Init) {
void SetterGetter::Init(v8::Local<v8::Object> target) {
v8::Local<v8::FunctionTemplate> tpl =
Nan::New<v8::FunctionTemplate>(SetterGetter::New);
settergetter_constructor.Reset(tpl);
Expand Down Expand Up @@ -160,4 +160,4 @@ NAN_METHOD(SetterGetter::Log) {
info.GetReturnValue().Set(Nan::New(settergetter->log).ToLocalChecked());
}

NODE_MODULE(accessors2, SetterGetter::Init)
NAN_MODULE(accessors2, SetterGetter::Init)
4 changes: 2 additions & 2 deletions test/cpp/asyncprogressworker.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,10 +57,10 @@ NAN_METHOD(DoProgress) {
, To<uint32_t>(info[1]).FromJust()));
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New<v8::String>("a").ToLocalChecked()
, New<v8::FunctionTemplate>(DoProgress)->GetFunction());
}

NODE_MODULE(asyncprogressworker, Init)
NAN_MODULE(asyncprogressworker, Init)
4 changes: 2 additions & 2 deletions test/cpp/asyncworker.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,10 @@ NAN_METHOD(DoSleep) {
new SleepWorker(callback, To<uint32_t>(info[0]).FromJust()));
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New<v8::String>("a").ToLocalChecked()
, New<v8::FunctionTemplate>(DoSleep)->GetFunction());
}

NODE_MODULE(asyncworker, Init)
NAN_MODULE(asyncworker, Init)
4 changes: 2 additions & 2 deletions test/cpp/asyncworkererror.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -26,10 +26,10 @@ NAN_METHOD(Work) {
info.GetReturnValue().SetUndefined();
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New("a").ToLocalChecked()
, New<v8::FunctionTemplate>(Work)->GetFunction());
}

NODE_MODULE(asyncworkererror, Init)
NAN_MODULE(asyncworkererror, Init)
4 changes: 2 additions & 2 deletions test/cpp/buffer.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ NAN_METHOD(Copy) {
}


NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
for (unsigned char i = 0; i < DATA_SIZE; i++) {
data[i] = 'a' + i;
}
Expand All @@ -72,4 +72,4 @@ NAN_MODULE_INIT(Init) {
);
}

NODE_MODULE(buffer, Init)
NAN_MODULE(buffer, Init)
4 changes: 2 additions & 2 deletions test/cpp/bufferworkerpersistent.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,10 @@ NAN_METHOD(DoSleep) {
, bufferHandle));
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New<v8::String>("a").ToLocalChecked()
, New<v8::FunctionTemplate>(DoSleep)->GetFunction());
}

NODE_MODULE(bufferworkerpersistent, Init)
NAN_MODULE(bufferworkerpersistent, Init)
4 changes: 2 additions & 2 deletions test/cpp/converters.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ NAN_METHOD(Int32Value) {
info.GetReturnValue().Set(New(To<int32_t>(info[0]).FromJust()));
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New<v8::String>("toBoolean").ToLocalChecked()
, New<v8::FunctionTemplate>(ToBoolean)->GetFunction()
Expand Down Expand Up @@ -127,4 +127,4 @@ NAN_MODULE_INIT(Init) {
);
}

NODE_MODULE(converters, Init)
NAN_MODULE(converters, Init)
4 changes: 2 additions & 2 deletions test/cpp/error.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ X(TypeError)
, Nan::New<v8::FunctionTemplate>(NAME)->GetFunction());


NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
EXPORT_ERROR_FUNCTIONS(Error)
EXPORT_ERROR_FUNCTIONS(RangeError)
EXPORT_ERROR_FUNCTIONS(ReferenceError)
Expand All @@ -59,4 +59,4 @@ NAN_MODULE_INIT(Init) {
#undef EXPORT_ERROR_FUNCTIONS
#undef X

NODE_MODULE(error, Init)
NAN_MODULE(error, Init)
4 changes: 2 additions & 2 deletions test/cpp/gc.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ NAN_METHOD(Check) {
RemoveGCEpilogueCallback<gcEpilogueCallback>();
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New<v8::String>("hook").ToLocalChecked()
, GetFunction(New<v8::FunctionTemplate>(Hook)).ToLocalChecked()
Expand All @@ -46,4 +46,4 @@ NAN_MODULE_INIT(Init) {
);
}

NODE_MODULE(gc, Init)
NAN_MODULE(gc, Init)
6 changes: 3 additions & 3 deletions test/cpp/indexedinterceptors.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class IndexedInterceptor : public ObjectWrap {

public:
IndexedInterceptor() { std::strncpy(this->buf, "foo", sizeof (this->buf)); }
static NAN_MODULE_INIT(Init);
static void Init(v8::Local<v8::Object> target);
static v8::Local<v8::Value> NewInstance ();
static NAN_METHOD(New);

Expand All @@ -33,7 +33,7 @@ NAN_METHOD(CreateNew) {
info.GetReturnValue().Set(IndexedInterceptor::NewInstance());
}

NAN_MODULE_INIT(IndexedInterceptor::Init) {
void IndexedInterceptor::Init(v8::Local<v8::Object> target) {
v8::Local<v8::FunctionTemplate> tpl =
Nan::New<v8::FunctionTemplate>(IndexedInterceptor::New);
indexedinterceptors_constructor.Reset(tpl);
Expand Down Expand Up @@ -113,4 +113,4 @@ NAN_INDEX_QUERY(IndexedInterceptor::PropertyQuery) {
}
}

NODE_MODULE(indexedinterceptors, IndexedInterceptor::Init)
NAN_MODULE(indexedinterceptors, IndexedInterceptor::Init)
4 changes: 2 additions & 2 deletions test/cpp/isolatedata.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -28,11 +28,11 @@ NAN_METHOD(SetAndGet) {
info.GetReturnValue().Set(New<v8::Boolean>(d0 == d1));
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New<v8::String>("setAndGet").ToLocalChecked()
, New<v8::FunctionTemplate>(SetAndGet)->GetFunction()
);
}

NODE_MODULE(isolatedata, Init)
NAN_MODULE(isolatedata, Init)
6 changes: 3 additions & 3 deletions test/cpp/makecallback.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ using namespace Nan; // NOLINT(build/namespaces)

class MyObject : public node::ObjectWrap {
public:
static NAN_MODULE_INIT(Init);
static void Init(v8::Local<v8::Object> target);

private:
MyObject();
Expand All @@ -31,7 +31,7 @@ MyObject::MyObject() {
MyObject::~MyObject() {
}

NAN_MODULE_INIT(MyObject::Init) {
void MyObject::Init(v8::Local<v8::Object> target) {
// Prepare constructor template
v8::Local<v8::FunctionTemplate> tpl = Nan::New<v8::FunctionTemplate>(New);
tpl->SetClassName(Nan::New<v8::String>("MyObject").ToLocalChecked());
Expand Down Expand Up @@ -63,4 +63,4 @@ NAN_METHOD(MyObject::CallEmit) {
info.GetReturnValue().SetUndefined();
}

NODE_MODULE(makecallback, MyObject::Init)
NAN_MODULE(makecallback, MyObject::Init)
4 changes: 2 additions & 2 deletions test/cpp/morenews.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ NAN_METHOD(NewExternalAsciiStringResource) {
info.GetReturnValue().Set(ext);
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New("newNumber").ToLocalChecked()
, New<v8::FunctionTemplate>(NewNumber)->GetFunction()
Expand Down Expand Up @@ -101,4 +101,4 @@ NAN_MODULE_INIT(Init) {
);
}

NODE_MODULE(morenews, Init)
NAN_MODULE(morenews, Init)
4 changes: 2 additions & 2 deletions test/cpp/multifile1.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,11 @@

using namespace Nan; // NOLINT(build/namespaces)

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New<v8::String>("r").ToLocalChecked()
, New<v8::FunctionTemplate>(ReturnString)->GetFunction()
);
}

NODE_MODULE(multifile, Init)
NAN_MODULE(multifile, Init)
6 changes: 3 additions & 3 deletions test/cpp/namedinterceptors.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ class NamedInterceptor : public ObjectWrap {

public:
NamedInterceptor() { std::strncpy(this->buf, "foo", sizeof (this->buf)); }
static NAN_MODULE_INIT(Init);
static void Init(v8::Local<v8::Object> target);
static v8::Local<v8::Value> NewInstance ();
static NAN_METHOD(New);

Expand All @@ -33,7 +33,7 @@ NAN_METHOD(CreateNew) {
info.GetReturnValue().Set(NamedInterceptor::NewInstance());
}

NAN_MODULE_INIT(NamedInterceptor::Init) {
void NamedInterceptor::Init(v8::Local<v8::Object> target) {
v8::Local<v8::FunctionTemplate> tpl =
Nan::New<v8::FunctionTemplate>(NamedInterceptor::New);
namedinterceptors_constructor.Reset(tpl);
Expand Down Expand Up @@ -113,4 +113,4 @@ NAN_PROPERTY_QUERY(NamedInterceptor::PropertyQuery) {
}
}

NODE_MODULE(namedinterceptors, NamedInterceptor::Init)
NAN_MODULE(namedinterceptors, NamedInterceptor::Init)
4 changes: 2 additions & 2 deletions test/cpp/nancallback.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ NAN_METHOD(CallAsFunction) {
Callback(info[0].As<v8::Function>())();
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New<v8::String>("globalContext").ToLocalChecked()
, New<v8::FunctionTemplate>(GlobalContext)->GetFunction()
Expand All @@ -68,4 +68,4 @@ NAN_MODULE_INIT(Init) {
);
}

NODE_MODULE(nancallback, Init)
NAN_MODULE(nancallback, Init)
4 changes: 2 additions & 2 deletions test/cpp/nannew.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -467,7 +467,7 @@ NAN_METHOD(invokeMakeMaybe) {
info.GetReturnValue().Set(number.ToLocalChecked());
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
NAN_EXPORT(target, testArray);
NAN_EXPORT(target, testBoolean);
NAN_EXPORT(target, testBooleanObject);
Expand Down Expand Up @@ -505,4 +505,4 @@ NAN_MODULE_INIT(Init) {

} // end of anonymous namespace

NODE_MODULE(nannew, Init)
NAN_MODULE(nannew, Init)
4 changes: 2 additions & 2 deletions test/cpp/news.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -162,7 +162,7 @@ NAN_METHOD(NewBoolean2) {
#endif
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New<v8::String>("newNumber").ToLocalChecked()
, New<v8::FunctionTemplate>(NewNumber)->GetFunction()
Expand Down Expand Up @@ -269,4 +269,4 @@ NAN_MODULE_INIT(Init) {
);
}

NODE_MODULE(news, Init)
NAN_MODULE(news, Init)
4 changes: 2 additions & 2 deletions test/cpp/objectwraphandle.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ using namespace Nan; // NOLINT(build/namespaces)

class MyObject : public ObjectWrap {
public:
static NAN_MODULE_INIT(Init) {
static void Init(v8::Local<v8::Object> target) {
v8::Local<v8::FunctionTemplate> tpl = Nan::New<v8::FunctionTemplate>(New);
tpl->SetClassName(Nan::New("MyObject").ToLocalChecked());
tpl->InstanceTemplate()->SetInternalFieldCount(1);
Expand Down Expand Up @@ -60,4 +60,4 @@ class MyObject : public ObjectWrap {
double value_;
};

NODE_MODULE(objectwraphandle, MyObject::Init)
NAN_MODULE(objectwraphandle, MyObject::Init)
4 changes: 2 additions & 2 deletions test/cpp/persistent.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ NAN_METHOD(CopyablePersistent) {
info.GetReturnValue().Set(New(p));
}

NAN_MODULE_INIT(Init) {
void Init(v8::Local<v8::Object> target) {
Set(target
, New<v8::String>("save1").ToLocalChecked()
, New<v8::FunctionTemplate>(Save1)->GetFunction()
Expand All @@ -76,4 +76,4 @@ NAN_MODULE_INIT(Init) {
);
}

NODE_MODULE(persistent, Init)
NAN_MODULE(persistent, Init)

0 comments on commit 5f77093

Please sign in to comment.