Lines Matching refs:env
5 static napi_value TestCreateFunctionParameters(napi_env env,
10 NODE_API_CALL(env, napi_create_object(env, &return_value));
19 add_returned_status(env,
26 napi_create_function(env,
33 add_last_status(env, "nameIsNull", return_value);
35 napi_create_function(env,
42 add_last_status(env, "cbIsNull", return_value);
44 napi_create_function(env,
51 add_last_status(env, "resultIsNull", return_value);
56 static napi_value TestCallFunction(napi_env env, napi_callback_info info) {
59 NODE_API_CALL(env, napi_get_cb_info(env, info, &argc, args, NULL, NULL));
61 NODE_API_ASSERT(env, argc > 0, "Wrong number of arguments");
64 NODE_API_CALL(env, napi_typeof(env, args[0], &valuetype0));
66 NODE_API_ASSERT(env, valuetype0 == napi_function,
73 NODE_API_CALL(env, napi_get_global(env, &global));
76 NODE_API_CALL(env, napi_call_function(env, global, args[0], argc, argv, &result));
81 static napi_value TestFunctionName(napi_env env, napi_callback_info info) {
85 static void finalize_function(napi_env env, void* data, void* hint) {
90 NODE_API_CALL_RETURN_VOID(env, napi_get_undefined(env, &undefined));
94 NODE_API_CALL_RETURN_VOID(env, napi_get_reference_value(env, ref, &js_function));
98 NODE_API_CALL_RETURN_VOID(env,
99 napi_call_function(env, undefined, js_function, 0, NULL, NULL));
103 NODE_API_CALL_RETURN_VOID(env, napi_delete_reference(env, ref));
106 static napi_value MakeTrackedFunction(napi_env env, napi_callback_info info) {
114 NODE_API_CALL(env,
115 napi_get_cb_info(env, info, &argc, &js_finalize_cb, NULL, NULL));
116 NODE_API_ASSERT(env, argc == 1, "Wrong number of arguments");
117 NODE_API_CALL(env, napi_typeof(env, js_finalize_cb, &arg_type));
118 NODE_API_ASSERT(env, arg_type == napi_function, "Argument must be a function");
122 NODE_API_CALL(env,
124 env, "TrackedFunction", NAPI_AUTO_LENGTH, TestFunctionName, NULL,
130 NODE_API_CALL(env,
131 napi_create_reference(env, js_finalize_cb, 1, &js_finalize_cb_ref));
135 NODE_API_CALL(env,
137 env, result, js_finalize_cb_ref, finalize_function, NULL, NULL));
142 static napi_value TestBadReturnExceptionPending(napi_env env, napi_callback_info info) {
143 napi_throw_error(env, "throwing exception", "throwing exception");
156 napi_value Init(napi_env env, napi_value exports) {
158 NODE_API_CALL(env, napi_create_function(
159 env, NULL, NAPI_AUTO_LENGTH, TestCallFunction, NULL, &fn1));
162 NODE_API_CALL(env, napi_create_function(
163 env, "Name", NAPI_AUTO_LENGTH, TestFunctionName, NULL, &fn2));
166 NODE_API_CALL(env, napi_create_function(
167 env, "Name_extra", 5, TestFunctionName, NULL, &fn3));
170 NODE_API_CALL(env,
172 env, "MakeTrackedFunction", NAPI_AUTO_LENGTH, MakeTrackedFunction,
176 NODE_API_CALL(env,
178 env, "TestCreateFunctionParameters", NAPI_AUTO_LENGTH,
182 NODE_API_CALL(env,
184 env, "TestBadReturnExceptionPending", NAPI_AUTO_LENGTH,
187 NODE_API_CALL(env, napi_set_named_property(env, exports, "TestCall", fn1));
188 NODE_API_CALL(env, napi_set_named_property(env, exports, "TestName", fn2));
189 NODE_API_CALL(env,
190 napi_set_named_property(env, exports, "TestNameShort", fn3));
191 NODE_API_CALL(env,
192 napi_set_named_property(env, exports, "MakeTrackedFunction", fn4));
194 NODE_API_CALL(env,
196 env, exports, "TestCreateFunctionParameters", fn5));
198 NODE_API_CALL(env,
200 env, exports, "TestBadReturnExceptionPending", fn6));