Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CK_RHS_SET(3)		 BSD Library Functions Manual		 CK_RHS_SET(3)

NAME
     ck_rhs_set	-- store key into a hash set

LIBRARY
     Concurrency Kit (libck, -lck)

SYNOPSIS
     #include <ck_rhs.h>

     bool
     ck_rhs_set(ck_rhs_t *hs, unsigned long hash, const	void *key,
	 void **previous);

DESCRIPTION
     The ck_rhs_set(3) function	will store the key specified by	the key	argu-
     ment 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_RHS_HASH(3) macro).

     If	the call to ck_rhs_set(3) was successful then the key specified	by key
     was successfully stored in	the hash set pointed to	by hs.	If the key al-
     ready exists in the hash set, then	it is replaced by key and the previous
     value is stored into the void pointer pointed to by the previous argu-
     ment. If previous is set to NULL then key was not a replacement for an
     existing entry in the hash	set.

RETURN VALUES
     Upon successful completion, ck_rhs_set(3) returns true and	otherwise re-
     turns false on failure.

ERRORS
     Behavior is undefined if key or hs	are uninitialized. The function	will
     also return false if the hash set could not be enlarged to	accomodate key
     insertion.

SEE ALSO
     ck_rhs_init(3), ck_rhs_move(3), ck_rhs_destroy(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_fas(3), ck_rhs_remove(3), ck_rhs_grow(3),
     ck_rhs_gc(3), ck_rhs_rebuild(3), ck_rhs_count(3), ck_rhs_reset(3),
     ck_rhs_reset_size(3), ck_rhs_stat(3)

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

			      September	17, 2012

NAME | LIBRARY | SYNOPSIS | DESCRIPTION | RETURN VALUES | ERRORS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=ck_rhs_set&sektion=3&manpath=FreeBSD+12.0-RELEASE+and+Ports>

home | help