Skip to content

Commit

Permalink
simplify addon init
Browse files Browse the repository at this point in the history
  • Loading branch information
Gabriel Schulhof committed Feb 13, 2020
1 parent 293ee15 commit 62cd556
Showing 1 changed file with 22 additions and 17 deletions.
39 changes: 22 additions & 17 deletions test/addon_data.cc
Original file line number Diff line number Diff line change
Expand Up @@ -41,31 +41,36 @@ class Addon {
}
};

static Napi::Value Getter(const Napi::CallbackInfo& info) {
return info.Env().GetInstanceData<Addon>()->VerboseIndicator.New({});
}

static void Setter(const Napi::CallbackInfo& info) {
info.Env().GetInstanceData<Addon>()->verbose = info[0].As<Napi::Boolean>();
}

Addon(Napi::Env env): VerboseIndicator(VerboseIndicator::Init(env)) {}
bool verbose = false;
Napi::FunctionReference VerboseIndicator;
~Addon() {
if (verbose) {
fprintf(stderr, "addon_data: Addon::~Addon\n");
}
}
};

static Napi::Value Getter(const Napi::CallbackInfo& info) {
return info.Env().GetInstanceData<Addon>()->VerboseIndicator.New({});
}

static void Setter(const Napi::CallbackInfo& info) {
info.Env().GetInstanceData<Addon>()->verbose = info[0].As<Napi::Boolean>();
}
static Napi::Object Init(Napi::Env env) {
env.SetInstanceData(new Addon(env));
Napi::Object result = Napi::Object::New(env);
result.DefineProperties({
Napi::PropertyDescriptor::Accessor<Getter, Setter>("verbose"),
});

Napi::Object InitAddonData(Napi::Env env) {
env.SetInstanceData(new Addon(env));
Napi::Object result = Napi::Object::New(env);
return result;
}

result.DefineProperties({
Napi::PropertyDescriptor::Accessor<Getter, Setter>("verbose"),
});
private:
bool verbose = false;
Napi::FunctionReference VerboseIndicator;
};

return result;
Napi::Object InitAddonData(Napi::Env env) {
return Addon::Init(env);
}

0 comments on commit 62cd556

Please sign in to comment.