SYNOPSIS
#include <genders.h>
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.ERRORS
- GENDERS_ERR_NULLHANDLE
- The handle parameter is NULL. The genders handle must be created with genders_handle_create(3).
- GENDERS_ERR_OPEN
- The genders file indicated by filename cannot be opened for reading.
- GENDERS_ERR_READ
- Error reading the genders file indicated by filename.
- GENDERS_ERR_PARSE
- The genders file indicated by filename is incorrectly formatted.
- GENDERS_ERR_ISLOADED
- genders_load_data(3) has already been called with handle.
- GENDERS_ERR_OVERFLOW
- A line in the genders database exceeds the maximum allowed length.
- GENDERS_ERR_OUTMEM
- malloc(3) has failed internally, system is out of memory.
- GENDERS_ERR_MAGIC
- handle has an incorrect magic number. handle does not point to a genders handle or handle has been destroyed by genders_handle_destroy(3).
- GENDERS_ERR_INTERNAL
-
An internal system error has occurred.