NAME¶
ck_hs_fas
—
fetch and store key in hash set
LIBRARY¶
Concurrency Kit (libck, -lck)
SYNOPSIS¶
#include
<ck_hs.h>
bool
ck_hs_fas
(
ck_hs_t
*hs,
unsigned
long hash,
const
void *key,
void
**previous);
DESCRIPTION¶
The
ck_hs_fas
(
3)
function will fetch and store the key specified by the
key argument in the hash set pointed to by
the
hs argument. The key specified by
key is expected to have the hash value
specified by the
hash argument (which was
previously generated using the
CK_HS_HASH(3)
macro).
If the call to
ck_hs_fas
(
3)
was successful then the key specified by
key
was successfully stored in the hash set pointed to by
hs. The key must already exist in the hash
set, and is replaced by
key and the previous
value is stored into the void pointer pointed to by the
previous argument. If the key does not exist
in the hash set then the function will return false and the hash set is
unchanged. This function is guaranteed to be stable with respect to memory
usage.
RETURN VALUES¶
Upon successful completion,
ck_hs_fas
(
3)
returns true and otherwise returns false on failure.
ERRORS¶
Behavior is undefined if
key or
hs are uninitialized.
SEE ALSO¶
ck_hs_init(3),
ck_hs_move(3),
ck_hs_destroy(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/