in c_src/hyper_carray.c [134:153]
static ERL_NIF_TERM set(ErlNifEnv * env, int argc,
const ERL_NIF_TERM argv[])
{
carray_ptr arr = NULL;
HYPER_CARRAY_OR_BADARG(argv[2], arr);
unsigned int index = 0;
unsigned int new_value = 0;
if (!enif_get_uint(env, argv[0], &index)
|| !enif_get_uint(env, argv[1], &new_value))
return enif_make_badarg(env);
// Validate bounds
if (index > arr->size - 1)
return enif_make_badarg(env);
carray_merge_item(arr, index, new_value);
return argv[2];
}