CK_HS_APPLY(3) Library Functions Manual CK_HS_APPLY(3)

ck_hs_applyapply a function to hash set value

Concurrency Kit (libck, -lck)

#include <ck_hs.h>

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

bool
ck_hs_apply(ck_hs_t *hs, unsigned long hash, const void *key, ck_hs_apply_fn_t *function, void *argument);

The (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_hs_apply(3). If the pointer returned by function is equivalent to the first argument then no modification is made to the hash set.

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

ck_hs_init(3), ck_hs_move(3), ck_hs_destroy(3), ck_hs_fas(3), CK_HS_HASH(3), ck_hs_iterator_init(3), ck_hs_next(3), ck_hs_get(3), ck_hs_put(3), ck_hs_put_unique(3), ck_hs_remove(3), ck_hs_grow(3), ck_hs_rebuild(3), ck_hs_gc(3), ck_hs_count(3), ck_hs_reset(3), ck_hs_reset_size(3), ck_hs_stat(3)

Additional information available at http://concurrencykit.org/

September 1, 2014