ck_hs_apply - Man Page

apply a function to hash set value

Library

Concurrency Kit (libck, -lck)

Synopsis

#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);

Description

The ck_hs_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_hs_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_hs_apply(3) returns true and otherwise returns false on failure.

See Also

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/

Info

September 1, 2014