summaryrefslogtreecommitdiff
path: root/test/addons-napi/6_object_wrap/myobject.h
blob: 2c8f47753769f54f70214e7bcdf622dfd23e6659 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#ifndef TEST_ADDONS_NAPI_6_OBJECT_WRAP_MYOBJECT_H_
#define TEST_ADDONS_NAPI_6_OBJECT_WRAP_MYOBJECT_H_

#include <node_api.h>

class MyObject {
 public:
  static void Init(napi_env env, napi_value exports);
  static void Destructor(napi_env env, void* nativeObject, void* finalize_hint);

 private:
  explicit MyObject(double value_ = 0);
  ~MyObject();

  static void New(napi_env env, napi_callback_info info);
  static void GetValue(napi_env env, napi_callback_info info);
  static void SetValue(napi_env env, napi_callback_info info);
  static void PlusOne(napi_env env, napi_callback_info info);
  static void Multiply(napi_env env, napi_callback_info info);
  static napi_ref constructor;
  double value_;
  napi_env env_;
  napi_ref wrapper_;
};

#endif  // TEST_ADDONS_NAPI_6_OBJECT_WRAP_MYOBJECT_H_