The statgrab library is organised into components, whereby each component contains interrelated functions. Other components are made known to the globals component by filling a
sg_comp_init structure and appending it to the list
comp_info in src/libstatgrab/globals.c. See sg_comp_init(3) for details.
The error managing component is a mixed one, partially public (getting error status), partially private (modifying error status). The last error is held per thread once error component initialisation is run once.
The memory management is done by the vector and tools components. The memory management covers optimised vector management (creating, resizing, freeing, comparing, ...) and dynamic storage management (improved string management).
libstatgrab(3) sg_intro(3) sg_set_error(3) sg_comp_init(3) sg_vector_create(3) sg_update_string(3)