NAME¶genders_load_data - read and parse a genders file
int genders_load_data(genders_t handle, const char *filename);
DESCRIPTION¶genders_load_data() read and parses the genders file indicated by filename. If filename is NULL, genders_load_data() will attempt to read and parse the default genders file defined by GENDERS_DEFAULT_FILE. handle is a genders handle created by genders_handle_create(3).
After genders_load_data() is called, information about the genders file is stored in the genders handle passed in. This information is used by other genders C API functions. All future use of handle with other genders C API functions will be directly associated with the genders file indicated by filename (or the default genders file if filename is NULL).
RETURN VALUES¶On success, 0 is returned. On error, -1 is returned, and an error code is returned in handle. The error code can be retrieved via genders_errnum(3) , and a description of the error code can be retrieved via genders_strerror(3). Error codes are defined in genders.h.
- The handle parameter is NULL. The genders handle must be created with genders_handle_create(3).
- The genders file indicated by filename cannot be opened for reading.
- Error reading the genders file indicated by filename.
- The genders file indicated by filename is incorrectly formatted.
- genders_load_data(3) has already been called with handle.
- A line in the genders database exceeds the maximum allowed length.
- malloc(3) has failed internally, system is out of memory.
- handle has an incorrect magic number. handle does not point to a genders handle or handle has been destroyed by genders_handle_destroy(3).
- An internal system error has occurred.
SEE ALSO¶libgenders(3), genders_handle_create(3), genders_handle_destroy(3), genders_errnum(3), genders_strerror(3)