ck_rhs_apply man page

ck_rhs_apply ā€” apply a function to hash set value


Concurrency Kit (libck, -lck)


#include <ck_rhs.h>

void *
ck_rhs_apply_fn_t(void *key, void *closure);

ck_rhs_apply(ck_rhs_t *hs, unsigned long hash, const void *key, ck_rhs_apply_fn_t *function, void *argument);


The ck_rhs_apply(3) function will lookup the hash set slot associated with key and pass it to function pointed to by function for further action. This callback may remove or replace the value by respectively returning NULL or a pointer to another object with an identical key. The first argument passed to function is a pointer to the object found in the hash set and the second argument is the argument pointer passed to ck_rhs_apply(3). If the pointer returned by function is equivalent to the first argument then no modification is made to the hash set.

Return Values

Upon successful completion, ck_rhs_apply(3) returns true and otherwise returns false on failure.

See Also

ck_rhs_init(3), ck_rhs_move(3), ck_rhs_destroy(3), ck_rhs_fas(3), CK_RHS_HASH(3), ck_rhs_iterator_init(3), ck_rhs_next(3), ck_rhs_get(3), ck_rhs_put(3), ck_rhs_put_unique(3), ck_rhs_remove(3), ck_rhs_grow(3), ck_rhs_rebuild(3), ck_rhs_gc(3), ck_rhs_count(3), ck_rhs_reset(3), ck_rhs_reset_size(3), ck_rhs_stat(3)

Additional information available at


September 1, 2014