@@ -97,6 +97,14 @@ static napi_value External(napi_env env, napi_callback_info info) {
97
97
return output_array ;
98
98
}
99
99
100
+
101
+ static napi_value EmptyArrayBuffer (napi_env env , napi_callback_info info ) {
102
+ void * null_data = NULL ;
103
+ napi_value array_buffer ;
104
+ NAPI_CALL (env , napi_create_arraybuffer (env , 0 , & null_data , & array_buffer ));
105
+ return array_buffer ;
106
+ }
107
+
100
108
static napi_value CreateTypedArray (napi_env env , napi_callback_info info ) {
101
109
size_t argc = 4 ;
102
110
napi_value args [4 ];
@@ -183,13 +191,35 @@ static napi_value Detach(napi_env env, napi_callback_info info) {
183
191
return NULL ;
184
192
}
185
193
194
+ static napi_value IsDetached (napi_env env , napi_callback_info info ) {
195
+ size_t argc = 1 ;
196
+ napi_value args [1 ];
197
+ NAPI_CALL (env , napi_get_cb_info (env , info , & argc , args , NULL , NULL ));
198
+ NAPI_ASSERT (env , argc == 1 , "Wrong number of arguments." );
199
+
200
+ napi_value array_buffer = args [0 ];
201
+ bool is_arraybuffer ;
202
+ NAPI_CALL (env , napi_is_arraybuffer (env , array_buffer , & is_arraybuffer ));
203
+ NAPI_ASSERT (env , is_arraybuffer , "Wrong type of arguments. Expects an array buffer as first argument." );
204
+
205
+ bool is_detached ;
206
+ NAPI_CALL (env , napi_is_detached_arraybuffer (env , array_buffer , & is_detached ));
207
+
208
+ napi_value result ;
209
+ NAPI_CALL (env , napi_get_boolean (env , is_detached , & result ));
210
+
211
+ return result ;
212
+ }
213
+
186
214
EXTERN_C_START
187
215
napi_value Init (napi_env env , napi_value exports ) {
188
216
napi_property_descriptor descriptors [] = {
189
217
DECLARE_NAPI_PROPERTY ("Multiply" , Multiply ),
190
218
DECLARE_NAPI_PROPERTY ("External" , External ),
219
+ DECLARE_NAPI_PROPERTY ("EmptyArrayBuffer" , EmptyArrayBuffer ),
191
220
DECLARE_NAPI_PROPERTY ("CreateTypedArray" , CreateTypedArray ),
192
221
DECLARE_NAPI_PROPERTY ("Detach" , Detach ),
222
+ DECLARE_NAPI_PROPERTY ("IsDetached" , IsDetached ),
193
223
};
194
224
195
225
NAPI_CALL (env , napi_define_properties (
0 commit comments