CK_RHS_GET(3)
π CK_RHS_GET(3) π
okay bestie, so this page lives in the Concurrency Kit manual, aka libck, and you link against it with -lck. We're talking about ck_rhs_get today and honestly? she's the finder. the girl who knows where everything is. let's go π¦
β¨ NAME β¨
ck_rhs_get β load a key from a hash set π
πΈ LIBRARY πΈ
Concurrency Kit (libck, -lck)
π SYNOPSIS π
#include <ck_rhs.h>
void *
ck_rhs_get(ck_rhs_t *hs, unsigned long hash, const void *key);
π DESCRIPTION π
so the ck_rhs_get(3) function is literally just gonna hand you back a pointer to a key inside the hash set hs β specifically a key that's of equivalent value to whatever object key is pointing at. it's giving "found her" energy fr fr.
now, plot twist: the key you pass in is expected to already have the hash value that you're handing over in the hash argument. and that hash? it's supposed to have been generated earlier using the CK_RHS_HASH(3) macro. don't just make one up, bestie, that's not the vibe. π
π«Ά RETURN VALUES π«Ά
- if the
keyyou gave is a member ofhs, you get back a pointer to the key as it's stored insidehs. iconic. β¨ - if the key wasn't found in
hs, you getNULLback. and that's it. that's the whole story. π
π ERRORS π
ngl this part is the scary part: behavior is undefined ifentryorhsare uninitialized. like, uninitialized. do not do it. no cap. π
π 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_put(3)ck_rhs_put_unique(3)ck_rhs_set(3)ck_rhs_fas(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)
there's also more lore waiting for you at http://concurrencykit.org/ β go drink your water and read the docs π
k that's the whole page bestie, hope it ate π this little masterpiece was dated September 17, 2012 and it's filed under CK_RHS_GET(3) in the Concurrency Kit collection. mwah, bye πβ¨
π¦ where this page comes from
- alpine 3.24: ck-doc 0.7.2-r1 Β· BSD-2-Clause AND Apache-2.0
- debian bookworm: libck-dev 0.7.1-10 Β· BSD-2-Clause
- debian trixie: libck-dev 0.7.2-6 Β· BSD-2-Clause
- epel 10: ck-devel 0.7.2-1.el10_1 Β· BSD-2-clause AND Apache-2.0 AND BSD-3-clause
- epel 9: ck-devel 0.7.0-10.el9 Β· BSD
- fedora 43: ck-devel 0.7.2-2.fc43 Β· BSD-2-clause AND Apache-2.0 AND BSD-3-clause
- fedora 43: ck-devel 0.7.2-2.fc43 Β· BSD-2-clause AND Apache-2.0 AND BSD-3-clause
- fedora 44: ck-devel 0.7.2-4.fc44 Β· BSD-2-clause AND Apache-2.0 AND BSD-3-clause
- fedora 44: ck-devel 0.7.2-4.fc44 Β· BSD-2-clause AND Apache-2.0 AND BSD-3-clause
- nixos 26.05: ck 0.7.2
- nixpkgs unstable: ck 0.7.2
- opensuse-leap 16.0: ck-devel 0.7.2-bp160.1.9 Β· Apache-2.0 AND BSD-2-Clause
- opensuse-leap 16.0: ck-devel 0.7.2-bp160.1.9 Β· Apache-2.0 AND BSD-2-Clause
- opensuse-leap 16.0: ck-devel 0.7.2-bp160.1.9 Β· Apache-2.0 AND BSD-2-Clause
- ubuntu jammy: libck-dev 0.7.1-6ubuntu2 Β· BSD-2-Clause
- ubuntu noble: libck-dev 0.7.1-13build1 Β· BSD-2-Clause
- ubuntu questing: libck-dev 0.7.2-5ubuntu1
- ubuntu resolute: libck-dev 0.7.2-5ubuntu2 Β· BSD-2-Clause
- ubuntu stonking: libck-dev 0.7.2-11 Β· BSD-2-Clause
- Copyright 2012-2013 Samy Al Bahra
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms