|
|
@ -84,6 +84,41 @@ napi_value TestHasElement(napi_env env, napi_callback_info info) { |
|
|
|
return ret; |
|
|
|
} |
|
|
|
|
|
|
|
napi_value TestDeleteElement(napi_env env, napi_callback_info info) { |
|
|
|
size_t argc = 2; |
|
|
|
napi_value args[2]; |
|
|
|
|
|
|
|
NAPI_CALL(env, napi_get_cb_info(env, info, &argc, args, NULL, NULL)); |
|
|
|
NAPI_ASSERT(env, argc == 2, "Wrong number of arguments"); |
|
|
|
|
|
|
|
napi_valuetype valuetype0; |
|
|
|
NAPI_CALL(env, napi_typeof(env, args[0], &valuetype0)); |
|
|
|
NAPI_ASSERT(env, valuetype0 == napi_object, |
|
|
|
"Wrong type of arguments. Expects an array as first argument."); |
|
|
|
|
|
|
|
napi_valuetype valuetype1; |
|
|
|
NAPI_CALL(env, napi_typeof(env, args[1], &valuetype1)); |
|
|
|
NAPI_ASSERT(env, valuetype1 == napi_number, |
|
|
|
"Wrong type of arguments. Expects an integer as second argument."); |
|
|
|
|
|
|
|
napi_value array = args[0]; |
|
|
|
int32_t index; |
|
|
|
bool result; |
|
|
|
napi_value ret; |
|
|
|
|
|
|
|
NAPI_CALL(env, napi_get_value_int32(env, args[1], &index)); |
|
|
|
NAPI_CALL(env, napi_is_array(env, array, &result)); |
|
|
|
|
|
|
|
if (!result) { |
|
|
|
return NULL; |
|
|
|
} |
|
|
|
|
|
|
|
NAPI_CALL(env, napi_delete_element(env, array, index, &result)); |
|
|
|
NAPI_CALL(env, napi_get_boolean(env, result, &ret)); |
|
|
|
|
|
|
|
return ret; |
|
|
|
} |
|
|
|
|
|
|
|
napi_value New(napi_env env, napi_callback_info info) { |
|
|
|
size_t argc = 1; |
|
|
|
napi_value args[1]; |
|
|
@ -138,6 +173,7 @@ void Init(napi_env env, napi_value exports, napi_value module, void* priv) { |
|
|
|
napi_property_descriptor descriptors[] = { |
|
|
|
DECLARE_NAPI_PROPERTY("TestGetElement", TestGetElement), |
|
|
|
DECLARE_NAPI_PROPERTY("TestHasElement", TestHasElement), |
|
|
|
DECLARE_NAPI_PROPERTY("TestDeleteElement", TestDeleteElement), |
|
|
|
DECLARE_NAPI_PROPERTY("New", New), |
|
|
|
DECLARE_NAPI_PROPERTY("NewWithLength", NewWithLength), |
|
|
|
}; |
|
|
|