@@ -25,20 +25,6 @@ static void FinalizeExternal(napi_env env, void* data, void* hint) {
2525 finalize_count ++ ;
2626}
2727
28- static void FinalizeExternalCallJs (napi_env env , void * data , void * hint ) {
29- int * actual_value = data ;
30- NODE_API_ASSERT_RETURN_VOID (env , actual_value == & test_value ,
31- "The correct pointer was passed to the finalizer" );
32-
33- napi_ref finalizer_ref = (napi_ref )hint ;
34- napi_value js_finalizer ;
35- napi_value recv ;
36- NODE_API_CALL_RETURN_VOID (env , napi_get_reference_value (env , finalizer_ref , & js_finalizer ));
37- NODE_API_CALL_RETURN_VOID (env , napi_get_global (env , & recv ));
38- NODE_API_CALL_RETURN_VOID (env , napi_call_function (env , recv , js_finalizer , 0 , NULL , NULL ));
39- NODE_API_CALL_RETURN_VOID (env , napi_delete_reference (env , finalizer_ref ));
40- }
41-
4228static napi_value CreateExternal (napi_env env , napi_callback_info info ) {
4329 int * data = & test_value ;
4430
@@ -117,31 +103,6 @@ CreateExternalWithFinalize(napi_env env, napi_callback_info info) {
117103 return result ;
118104}
119105
120- static napi_value
121- CreateExternalWithJsFinalize (napi_env env , napi_callback_info info ) {
122- size_t argc = 1 ;
123- napi_value args [1 ];
124- NODE_API_CALL (env , napi_get_cb_info (env , info , & argc , args , NULL , NULL ));
125- NODE_API_ASSERT (env , argc == 1 , "Wrong number of arguments" );
126- napi_value finalizer = args [0 ];
127- napi_valuetype finalizer_valuetype ;
128- NODE_API_CALL (env , napi_typeof (env , finalizer , & finalizer_valuetype ));
129- NODE_API_ASSERT (env , finalizer_valuetype == napi_function , "Wrong type of first argument" );
130- napi_ref finalizer_ref ;
131- NODE_API_CALL (env , napi_create_reference (env , finalizer , 1 , & finalizer_ref ));
132-
133- napi_value result ;
134- NODE_API_CALL (env ,
135- napi_create_external (env ,
136- & test_value ,
137- FinalizeExternalCallJs ,
138- finalizer_ref , /* finalize_hint */
139- & result ));
140-
141- finalize_count = 0 ;
142- return result ;
143- }
144-
145106static napi_value CheckExternal (napi_env env , napi_callback_info info ) {
146107 size_t argc = 1 ;
147108 napi_value arg ;
@@ -262,24 +223,24 @@ static napi_value ValidateDeleteBeforeFinalize(napi_env env, napi_callback_info
262223EXTERN_C_START
263224napi_value Init (napi_env env , napi_value exports ) {
264225 napi_property_descriptor descriptors [] = {
265- DECLARE_NODE_API_GETTER ("finalizeCount" , GetFinalizeCount ),
266- DECLARE_NODE_API_PROPERTY ("createExternal" , CreateExternal ),
267- DECLARE_NODE_API_PROPERTY ("createExternalWithFinalize" ,
268- CreateExternalWithFinalize ),
269- DECLARE_NODE_API_PROPERTY ("createExternalWithJsFinalize" ,
270- CreateExternalWithJsFinalize ),
271- DECLARE_NODE_API_PROPERTY ("checkExternal " , CheckExternal ),
272- DECLARE_NODE_API_PROPERTY ("createReference " , CreateReference ),
273- DECLARE_NODE_API_PROPERTY ("createSymbol" , CreateSymbol ) ,
274- DECLARE_NODE_API_PROPERTY ( "createSymbolFor" , CreateSymbolFor ),
275- DECLARE_NODE_API_PROPERTY ("createSymbolForEmptyString" , CreateSymbolForEmptyString ) ,
276- DECLARE_NODE_API_PROPERTY ( "createSymbolForIncorrectLength" , CreateSymbolForIncorrectLength ),
277- DECLARE_NODE_API_PROPERTY ("deleteReference" , DeleteReference ),
278- DECLARE_NODE_API_PROPERTY ("incrementRefcount" , IncrementRefcount ),
279- DECLARE_NODE_API_PROPERTY ("decrementRefcount" , DecrementRefcount ),
280- DECLARE_NODE_API_GETTER ("referenceValue" , GetReferenceValue ),
281- DECLARE_NODE_API_PROPERTY ("validateDeleteBeforeFinalize" ,
282- ValidateDeleteBeforeFinalize ),
226+ DECLARE_NODE_API_GETTER ("finalizeCount" , GetFinalizeCount ),
227+ DECLARE_NODE_API_PROPERTY ("createExternal" , CreateExternal ),
228+ DECLARE_NODE_API_PROPERTY ("createExternalWithFinalize" ,
229+ CreateExternalWithFinalize ),
230+ DECLARE_NODE_API_PROPERTY ("checkExternal" , CheckExternal ) ,
231+ DECLARE_NODE_API_PROPERTY ( "createReference" , CreateReference ),
232+ DECLARE_NODE_API_PROPERTY ("createSymbol " , CreateSymbol ),
233+ DECLARE_NODE_API_PROPERTY ("createSymbolFor " , CreateSymbolFor ),
234+ DECLARE_NODE_API_PROPERTY ("createSymbolForEmptyString" ,
235+ CreateSymbolForEmptyString ),
236+ DECLARE_NODE_API_PROPERTY ("createSymbolForIncorrectLength" ,
237+ CreateSymbolForIncorrectLength ),
238+ DECLARE_NODE_API_PROPERTY ("deleteReference" , DeleteReference ),
239+ DECLARE_NODE_API_PROPERTY ("incrementRefcount" , IncrementRefcount ),
240+ DECLARE_NODE_API_PROPERTY ("decrementRefcount" , DecrementRefcount ),
241+ DECLARE_NODE_API_GETTER ("referenceValue" , GetReferenceValue ),
242+ DECLARE_NODE_API_PROPERTY ("validateDeleteBeforeFinalize" ,
243+ ValidateDeleteBeforeFinalize ),
283244 };
284245
285246 NODE_API_CALL (env , napi_define_properties (
0 commit comments