#include #include namespace { inline void NewClass(const v8::FunctionCallbackInfo& args) { // this != new.target since we are being invoked through super(). assert(args.IsConstructCall()); assert(!args.This()->StrictEquals(args.NewTarget())); } inline void Initialize(v8::Local binding) { auto isolate = binding->GetIsolate(); binding->Set(v8::String::NewFromUtf8(isolate, "Class"), v8::FunctionTemplate::New(isolate, NewClass)->GetFunction()); } NODE_MODULE(NODE_GYP_MODULE_NAME, Initialize) } // anonymous namespace