---
name: "genders_parse"
section: "3"
platform: "linux"
package: "libgenders0-dev"
version: "1.27-3-3.1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/genders_parse"
---

# genders\_parse(3)

determine errors with a genders file

## NAME

genders\_parse - determine errors with a genders file

## SYNOPSIS

**#include \<genders.h\>**

**int genders\_parse(genders\_t handle, const char \*filename, FILE \*stream);**\

## DESCRIPTION

**genders\_parse()** parses the genders file indicated by *filename* and outputs information to *stream* about parse errors in the genders file.  If *filename* is NULL, the default genders file will be checked.  If *stream* is NULL, information will be output to standard error.\

## RETURN VALUES

On success, the number of parse errors discovered is returned.  If there are no errors, 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)](/genders_errnum/3.md) , and a description of the error code can be retrieved via  [**genders\_strerror**(3)](/genders_strerror/3.md). 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_handle_create/3.md).

- **GENDERS\_ERR\_OPEN**

  The genders file indicated by *filename* cannot be opened for reading.

- **GENDERS\_ERR\_OVERFLOW**

  A line in the genders database exceeds the maximum allowed length.

- **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_handle_destroy/3.md).\

## FILES

/usr/include/genders.h

## SEE ALSO

[libgenders(3)](/libgenders/3.md), [genders\_handle\_create(3)](/genders_handle_create/3.md), [genders\_errnum(3)](/genders_errnum/3.md), [genders\_strerror(3)](/genders_strerror/3.md)
