diff options
Diffstat (limited to 'test/addons/02_callbacks/binding.cc')
-rw-r--r-- | test/addons/02_callbacks/binding.cc | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/test/addons/02_callbacks/binding.cc b/test/addons/02_callbacks/binding.cc new file mode 100644 index 0000000000..53996f648b --- /dev/null +++ b/test/addons/02_callbacks/binding.cc @@ -0,0 +1,30 @@ +// Auto-generated by `node tools/doc/addon-verify.js` +// binding.cc +#include <node.h> + +namespace demo { + +using v8::Function; +using v8::FunctionCallbackInfo; +using v8::Isolate; +using v8::Local; +using v8::Null; +using v8::Object; +using v8::String; +using v8::Value; + +void RunCallback(const FunctionCallbackInfo<Value>& args) { + Isolate* isolate = args.GetIsolate(); + Local<Function> cb = Local<Function>::Cast(args[0]); + const unsigned argc = 1; + Local<Value> argv[argc] = { String::NewFromUtf8(isolate, "hello world") }; + cb->Call(Null(isolate), argc, argv); +} + +void Init(Local<Object> exports, Local<Object> module) { + NODE_SET_METHOD(module, "exports", RunCallback); +} + +NODE_MODULE(NODE_GYP_MODULE_NAME, Init) + +} // namespace demo |