Lines Matching defs:env
24 napi_value LinkNapi::Constructor(napi_env env)
38 return NapiDataUtils::DefineClass(env, "Hyperlink", properties, count, LinkNapi::New);
41 napi_value LinkNapi::New(napi_env env, napi_callback_info info)
46 ctxt->GetCbInfoSync(env, info);
47 ASSERT_ERR(ctxt->env, ctxt->status == napi_ok, Status::E_ERROR, ctxt->error);
50 ASSERT_ERR(ctxt->env, link != nullptr, Status::E_ERROR, "no memory for link!");
52 ASSERT_CALL(env, napi_wrap(env, ctxt->self, link, Destructor, nullptr, nullptr), link);
56 void LinkNapi::NewInstance(napi_env env, std::shared_ptr<UnifiedRecord> in, napi_value &out)
59 ASSERT_CALL_VOID(env, napi_new_instance(env, Constructor(env), 0, nullptr, &out));
61 ASSERT_ERR_VOID(env, link != nullptr, Status::E_ERROR, "no memory for link!");
63 ASSERT_CALL_DELETE(env, napi_wrap(env, out, link, Destructor, nullptr, nullptr), link);
66 void LinkNapi::Destructor(napi_env env, void *data, void *hint)
74 LinkNapi *LinkNapi::GetLink(napi_env env, napi_callback_info info, std::shared_ptr<ContextBase> ctxt)
77 ctxt->GetCbInfoSync(env, info);
78 ASSERT_ERR(ctxt->env, ctxt->status == napi_ok, Status::E_ERROR, ctxt->error);
82 napi_value LinkNapi::GetUrl(napi_env env, napi_callback_info info)
86 auto link = GetLink(env, info, ctxt);
88 ctxt->env, (link != nullptr && link->value_ != nullptr), Status::E_ERROR, "invalid object!");
89 ctxt->status = NapiDataUtils::SetValue(env, link->value_->GetUrl(), ctxt->output);
90 ASSERT_ERR(ctxt->env, ctxt->status == napi_ok, Status::E_ERROR, "set url failed!");
94 napi_value LinkNapi::SetUrl(napi_env env, napi_callback_info info)
99 auto input = [env, ctxt, &url](size_t argc, napi_value *argv) {
102 ctxt->status = NapiDataUtils::GetValue(env, argv[0], url);
106 ctxt->GetCbInfoSync(env, info, input);
107 ASSERT_ERR(ctxt->env, ctxt->status == napi_ok, Status::E_ERROR, ctxt->error);
110 ctxt->env, (link != nullptr && link->value_ != nullptr), Status::E_ERROR, "invalid object!");
115 napi_value LinkNapi::GetDescription(napi_env env, napi_callback_info info)
119 auto link = GetLink(env, info, ctxt);
121 ctxt->env, (link != nullptr && link->value_ != nullptr), Status::E_ERROR, "invalid object!");
122 ctxt->status = NapiDataUtils::SetValue(env, link->value_->GetDescription(), ctxt->output);
123 ASSERT_ERR(ctxt->env, ctxt->status == napi_ok, Status::E_ERROR, "set description failed!");
127 napi_value LinkNapi::SetDescription(napi_env env, napi_callback_info info)
132 auto input = [env, ctxt, &description](size_t argc, napi_value *argv) {
135 ctxt->status = NapiDataUtils::GetValue(env, argv[0], description);
139 ctxt->GetCbInfoSync(env, info, input);
140 ASSERT_ERR(ctxt->env, ctxt->status == napi_ok, Status::E_ERROR, ctxt->error);
143 ctxt->env, (link != nullptr && link->value_ != nullptr), Status::E_ERROR, "invalid object!");