blob: 9959d4d38e22626c75ebf76215650991d69dfbff [file] [log] [blame]
#include "napi.h"
using namespace Napi;
Value createExternal(const CallbackInfo& info) {
FunctionReference ref = Reference<Function>::New(info[0].As<Function>(), 1);
auto ret = External<char>::New(
info.Env(),
nullptr,
[ref = std::move(ref)](Napi::Env /*env*/, char* /*data*/) {
ref.Call({});
});
return ret;
}
Object InitMovableCallbacks(Env env) {
Object exports = Object::New(env);
exports["createExternal"] = Function::New(env, createExternal);
return exports;
}