GENDERS_NODELIST_CREATE(3)
π GENDERS_NODELIST_CREATE(3) π
okay bestie, welcome to the libgenders list-management corner of the manual. this one's page three, section three, and it's literally all about making lists, wiping lists, and yeeting lists into the void. it's giving housekeeping but make it iconic. π§Ήβ¨
πΈ NAME πΈ
genders_nodelist_create, genders_nodelist_clear, genders_nodelist_destroy, genders_attrlist_create, genders_attrlist_clear, genders_attrlist_destroy, genders_vallist_create, genders_vallist_clear, genders_vallist_destroy β the list create, clear, and destroy routines. that's it, that's the whole job. π
β¨ SYNOPSIS β¨
#include <genders.h>
int genders_nodelist_create(genders_t handle, char ***nodelist);
int genders_nodelist_clear(genders_t handle, char **nodelist);
int genders_nodelist_destroy(genders_t handle, char **nodelist);
int genders_attrlist_create(genders_t handle, char ***attrlist);
int genders_attrlist_clear(genders_t handle, char **attrlist);
int genders_attrlist_destroy(genders_t handle, char **attrlist);
int genders_vallist_create(genders_t handle, char ***vallist);
int genders_vallist_clear(genders_t handle, char **vallist);
int genders_vallist_destroy(genders_t handle, char **vallist);
π¦ DESCRIPTION π¦
so here's the tea π΅. these nine functions β genders_nodelist_create(), genders_nodelist_clear(), genders_nodelist_destroy(), genders_attrlist_create(), genders_attrlist_clear(), genders_attrlist_destroy(), genders_vallist_create(), genders_vallist_clear(), and genders_vallist_destroy() β are the ones you use to create, clear, and destroy lists. and by "lists" we mean arrays of strings, bestie. arrays. of. strings. π they're built to be used with genders_getnodes(3), genders_getattr(3), and genders_getattr_all(3).
π the create girlies
genders_nodelist_create(), genders_attrlist_create(), and genders_vallist_create() create a list with the minimum size needed to store nodes, attributes, and attribute values respectively. nodelist, attrlist, and vallist get set to point to the created list. and the created lists are guaranteed to store all the node, attribute, and value information that comes back from genders_getnodes(3), genders_getattr(3), and genders_getattr_all(3). no overflow, no drama. π
π§Ό the clear girlies
genders_nodelist_clear(), genders_attrlist_clear(), and genders_vallist_clear() clear out any information stored in the lists pointed to by nodelist, attrlist, and vallist respectively. and listen β you do not have to call them after their respective create functions, okay? they only need to be called after they've been used in genders_getnodes(3), genders_getattr(3), and genders_getattr_all(3), and the programmer wants to re-use the list. that's the whole vibe check. β
π the destroy girlies
genders_nodelist_destroy(), genders_attrlist_destroy(), and genders_vallist_destroy() destroy the lists pointed to by nodelist, attrlist, and vallist respectively. gone. bye. π«Ά
β οΈ okay important plot twist: if no attributes or values are listed in the genders database, all of theattrlistandvallistfunctions will do nothing. literally nothing. and the pointer you passed intogenders_attrlist_create()andgenders_vallist_create()will not be set. so don't go dereferencing it expecting a glow-up, bestie. π
π₯ RETURN VALUES π₯
on success, genders_nodelist_create(), genders_attrlist_create(), and genders_vallist_create() return the number of elements the created list can store. slay.
on success, genders_nodelist_clear(), genders_attrlist_clear(), genders_vallist_clear(), genders_nodelist_destroy(), genders_attrlist_destroy(), and genders_vallist_destroy() return 0. clean. immaculate. β¨
on error, -1 is returned, and an error code is returned in handle. you can retrieve that error code via genders_errnum(3), and a description of the error code via genders_strerror(3). error codes are defined in genders.h. π
π ERRORS π
GENDERS_ERR_NULLHANDLEβ thehandleparameter isNULL. the genders handle must be created withgenders_handle_create(3). no handle, no service. π«GENDERS_ERR_NOTLOADEDβgenders_load_data(3)has not been called to load genders data. before lists of appropriate size can be created, the genders file must be read and parsed. you gotta read the file first, babe. πGENDERS_ERR_PARAMETERSβ an incorrect parameter has been passed in. bestie what did you do. πGENDERS_ERR_NULLPTRβ a null pointer has been found in the list passed in. πGENDERS_ERR_OUTMEMβmalloc(3)has failed internally, system is out of memory. the machine is struggling. πGENDERS_ERR_MAGICβhandlehas an incorrect magic number.handledoes not point to a genders handle, orhandlehas been destroyed bygenders_handle_destroy(3). magic's gone, girl. β¨πͺ
π FILES π
/usr/include/genders.h
π SEE ALSO π
libgenders(3), genders_handle_create(3), genders_load_data(3), genders_getnodes(3), genders_getattr(3), genders_getattr_all(3), genders_errnum(3), genders_strerror(3)
and that's the whole page, bestie!! this one came from LLNL and it's dated August 2003 β yeah, vintage, but she still ate. π go forth and manage your lists responsibly. mwah. π«Άππ
π¦ where this page comes from
- epel 10: libgenders-devel 1.28.1~^20231119git27b915d-5.el10_2 Β· GPL-2.0-only
- fedora 43: libgenders-devel 1.28.1~^20231119git27b915d-5.fc43 Β· GPL-2.0-only
- fedora 43: libgenders-devel 1.28.1~^20231119git27b915d-5.fc43 Β· GPL-2.0-only
- fedora 44: libgenders-devel 1.28.1~^20231119git27b915d-6.fc44 Β· GPL-2.0-only
- fedora 44: libgenders-devel 1.28.1~^20231119git27b915d-6.fc44 Β· GPL-2.0-only
- opensuse-leap 16.0: genders-devel 1.32-bp160.1.11 Β· GPL-2.0-or-later
- opensuse-leap 16.0: genders-devel 1.32-bp160.1.11 Β· GPL-2.0-or-later
- opensuse-leap 16.0: genders-devel 1.32-bp160.1.11 Β· GPL-2.0-or-later
- opensuse-leap 16.0: genders-devel 1.32-bp160.1.11 Β· GPL-2.0-or-later
- Copyright (C) 2007-2019 Lawrence Livermore National Security, LLC
- Copyright (C) 2001-2007 The Regents of the University of California
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms