| 5 | namespace { |
| 6 | |
| 7 | class TestAddon : public Napi::Addon<TestAddon> { |
| 8 | public: |
| 9 | inline TestAddon(Napi::Env env, Napi::Object exports) { |
| 10 | DefineAddon( |
| 11 | exports, |
| 12 | {InstanceMethod("increment", &TestAddon::Increment), |
| 13 | InstanceValue( |
| 14 | "subObject", |
| 15 | DefineProperties( |
| 16 | Napi::Object::New(env), |
| 17 | {InstanceMethod("decrement", &TestAddon::Decrement)}))}); |
| 18 | } |
| 19 | |
| 20 | ~TestAddon() { fprintf(stderr, "TestAddon::~TestAddon\n"); } |
| 21 | |
| 22 | private: |
| 23 | Napi::Value Increment(const Napi::CallbackInfo& info) { |
| 24 | return Napi::Number::New(info.Env(), ++value); |
| 25 | } |
| 26 | |
| 27 | Napi::Value Decrement(const Napi::CallbackInfo& info) { |
| 28 | return Napi::Number::New(info.Env(), --value); |
| 29 | } |
| 30 | |
| 31 | uint32_t value = 42; |
| 32 | }; |
| 33 | |
| 34 | Napi::Value CreateAddon(const Napi::CallbackInfo& info) { |
| 35 | return TestAddon::Init(info.Env(), Napi::Object::New(info.Env())); |
nothing calls this directly
no outgoing calls
no test coverage detected