hdf_set_symlink(3)
β¨ hdf_set_symlink β bestie edition β¨
okay so this is hdf_set_symlink(3), living in the util/neo_hdf.h corner of the manual-verse, and it's literally about making one part of your tree point at another part. no cap. π
πΈ NAME πΈ
hdf_set_symlink β set part of the tree to link to another π¦
π SYNOPSIS π
#include <util/neo_hdf.h>
NEOERR *hdf_set_symlink (HDF *hdf, const char *src, const char *dest);
π ARGUMENTS π
hdfβ the dataset node, aka where all the drama happens πsrcβ the source node name, the one that's gonna be doing the pointingdestβ the destination node name, and heads up bestie, this is from the top of the dataset, not relative names π
β¨ DESCRIPTION β¨
so hdf_set_symlink creates a link between two sections of an HDF dataset. the link is "by name", which is literally why it's called a "symlink". π«
and here's the slay part: the destination node does not need to exist. iconic behavior honestly. any attempt to access the source node will cause the function to walk to the dest node, and then continue walking from there. it's giving teleportation. π§
but listen, using symlinks can "hide" values in the dataset, because you won't be able to access any children of the linked node directly π dumps and other things that access the data structure directly will bypass the symlink, so likeβ¦ the vibe check is uneven.
use this feature sparingly, bestie, because it's likely to surprise you. and not in a cute way. π
β RETURN VALUE β
None. that's it. nothing. void. the silence is the answer. π
π«Ά SEE ALSO π«Ά
hdf_set_symlink(3)hdf_get_valuef(3)compareFunc)(3)hdf_dump_str(3)hdf_get_int_value(3)hdf_read_string_ignore(3)hdf_copy(3)hdf_get_node(3)hdf_set_value(3)hdf_obj_child(3)hdf_read_string(3)hdf_set_buf(3)hdf_register_fileload(3)hdf_get_obj(3)hdf_get_attr(3)hdf_obj_top(3)hdf_dump_format(3)hdf_destroy(3)hdf_init(3)hdf_obj_value(3)hdf_write_string(3)hdf_set_valuevf(3)hdf_sort_obj(3)hdf_write_file_atomic(3)hdf_obj_attr(3)hdf_set_valuef(3)hdf_get_copy(3)hdf_write_file(3)hdf_get_valuevf(3)hdf_set_int_value(3)hdf_dump(3)hdf_get_value(3)hdf_set_copy(3)hdf_obj_next(3)hdf_search_path(3)hdf_obj_name(3)hdf_set_attr(3)hdf_get_child(3)hdf_remove_tree
and that's the whole page, no notes. this lil manual moment came from ClearSilver, dated 12 July 2007 β yes bestie, 2007, it's vintage, it's archival, it's mother. π mwah, go read some more manpages, ily π
π¦ where this page comes from
- debian bookworm: clearsilver-dev 0.10.5-4+b5
- debian trixie: clearsilver-dev 0.10.5-6+b1
- epel 10: clearsilver 0.10.5-80.el10_2 Β· Apache-1.1
- epel 9: clearsilver 0.10.5-74.el9 Β· Apache-1.1
- fedora 43: clearsilver 0.10.5-80.fc43 Β· Apache-1.1
- fedora 44: clearsilver 0.10.5-82.fc44 Β· Apache-1.1
- ubuntu jammy: clearsilver-dev 0.10.5-4build3
- ubuntu noble: clearsilver-dev 0.10.5-4build7
- ubuntu questing: clearsilver-dev 0.10.5-6build1
- ubuntu resolute: clearsilver-dev 0.10.5-7
- ubuntu stonking: clearsilver-dev 0.10.5-7build1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms