#include "funcs.h"
#include "funcs_wrapper.h"
Napi::Object init_funcs(Napi::Env env, Napi::Object exports) {
exports.Set("hello", Napi::Function::New(env, hello_wrapper));
exports.Set("add", Napi::Function::New(env, add_wrapper));
return exports;
}
Napi::String hello_wrapper(const Napi::CallbackInfo &info) {
Napi::Env env = info.Env();
return Napi::String::New(env, hello());
}
Napi::Number add_wrapper(const Napi::CallbackInfo &info) {
Napi::Env env = info.Env();
if(info.Length() < 2 || ! info[0].IsNumber() || ! info[1].IsNumber()) {
Napi::TypeError::New(env,
"Arguments must be (int a, int b) such as (1, 2).")
.ThrowAsJavaScriptException();
}
int a = info[0].As<Napi::Number>();
int b = info[1].As<Napi::Number>();
return Napi::Number::New(env, add(a, b));
}