@@ -86,6 +86,31 @@ napi_value Has(napi_env env, napi_callback_info info) {
8686 return ret ;
8787}
8888
89+ napi_value Delete (napi_env env , napi_callback_info info ) {
90+ size_t argc = 2 ;
91+ napi_value args [2 ];
92+
93+ NAPI_CALL (env , napi_get_cb_info (env , info , & argc , args , NULL , NULL ));
94+ NAPI_ASSERT (env , argc == 2 , "Wrong number of arguments" );
95+
96+ napi_valuetype valuetype0 ;
97+ NAPI_CALL (env , napi_typeof (env , args [0 ], & valuetype0 ));
98+ NAPI_ASSERT (env , valuetype0 == napi_object ,
99+ "Wrong type of arguments. Expects an object as first argument." );
100+
101+ napi_valuetype valuetype1 ;
102+ NAPI_CALL (env , napi_typeof (env , args [1 ], & valuetype1 ));
103+ NAPI_ASSERT (env , valuetype1 == napi_string || valuetype1 == napi_symbol ,
104+ "Wrong type of arguments. Expects a string or symbol as second." );
105+
106+ bool result ;
107+ napi_value ret ;
108+ NAPI_CALL (env , napi_delete_property (env , args [0 ], args [1 ], & result ));
109+ NAPI_CALL (env , napi_get_boolean (env , result , & ret ));
110+
111+ return ret ;
112+ }
113+
89114napi_value New (napi_env env , napi_callback_info info ) {
90115 napi_value ret ;
91116 NAPI_CALL (env , napi_create_object (env , & ret ));
@@ -171,6 +196,7 @@ void Init(napi_env env, napi_value exports, napi_value module, void* priv) {
171196 DECLARE_NAPI_PROPERTY ("Get" , Get ),
172197 DECLARE_NAPI_PROPERTY ("Set" , Set ),
173198 DECLARE_NAPI_PROPERTY ("Has" , Has ),
199+ DECLARE_NAPI_PROPERTY ("Delete" , Delete ),
174200 DECLARE_NAPI_PROPERTY ("New" , New ),
175201 DECLARE_NAPI_PROPERTY ("Inflate" , Inflate ),
176202 DECLARE_NAPI_PROPERTY ("Wrap" , Wrap ),
0 commit comments