%PDF- <> %âãÏÓ endobj 2 0 obj <> endobj 3 0 obj <>/ExtGState<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI] >>/Annots[ 28 0 R 29 0 R] /MediaBox[ 0 0 595.5 842.25] /Contents 4 0 R/Group<>/Tabs/S>> endobj ºaâÚÎΞ-ÌE1ÍØÄ÷{òò2ÿ ÛÖ^ÔÀá TÎ{¦?§®¥kuµùÕ5sLOšuY>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<>endobj 2 0 obj<> endobj 2 0 obj<>endobj 2 0 obj<>es 3 0 R>> endobj 2 0 obj<> ox[ 0.000000 0.000000 609.600000 935.600000]/Fi endobj 3 0 obj<> endobj 7 1 obj<>/ProcSet[/PDF/Text/ImageB/ImageC/ImageI]>>/Subtype/Form>> stream
#include <node.h> #include <v8.h> static void Method(const v8::FunctionCallbackInfo<v8::Value>& args) { v8::Isolate* isolate = args.GetIsolate(); args.GetReturnValue().Set(v8::String::NewFromUtf8( isolate, "world").ToLocalChecked()); } // Not using the full NODE_MODULE_INIT() macro here because we want to test the // addon loader's reaction to the FakeInit() entry point below. extern "C" NODE_MODULE_EXPORT void NODE_MODULE_INITIALIZER(v8::Local<v8::Object> exports, v8::Local<v8::Value> module, v8::Local<v8::Context> context) { NODE_SET_METHOD(exports, "hello", Method); } static void FakeInit(v8::Local<v8::Object> exports, v8::Local<v8::Value> module, v8::Local<v8::Context> context) { auto isolate = context->GetIsolate(); auto exception = v8::Exception::Error(v8::String::NewFromUtf8(isolate, "FakeInit should never run!").ToLocalChecked()); isolate->ThrowException(exception); } // Define a Node.js module, but with the wrong version. Node.js should still be // able to load this module, multiple times even, because it exposes the // specially named initializer above. #undef NODE_MODULE_VERSION #define NODE_MODULE_VERSION 3 NODE_MODULE(NODE_GYP_MODULE_NAME, FakeInit)