SYNOPSIS

#include <getdata.h> unsigned int gd_nmfields_by_type(DIRFILE *dirfile, const char *parent, gd_entype_t type);

DESCRIPTION

The gd_nmfields_by_type() function queries a dirfile(5) database specified by dirfile and returns the number of metafields defined in the database for the supplied parent field.

The dirfile argument must point to a valid DIRFILE object previously created by a call to gd_open(3). The type argument should be one of the following symbols indicating the type of field to count:

  • GD_BIT_ENTRY, GD_CARRAY_ENTRY, GD_CONST_ENTRY, GD_DIVIDE_ENTRY, GD_INDEX_ENTRY, GD_LINCOM_ENTRY, GD_LINTERP_ENTRY, GD_MULTIPLY_ENTRY, GD_PHASE_ENTRY, GD_POLYNOM_ENTRY, GD_RECIP_ENTRY, GD_SBIT_ENTRY, GD_STRING_ENTRY.

RETURN VALUE

Upon successful completion, gd_nmfields_by_type() returns the number of defined metafields for the given parent. On error, it returns zero and sets the dirfile error to a non-zero error value. Possible error values are:

GD_E_BAD_CODE

The supplied parent field code was not found, or referred to a metafield itself.

GD_E_BAD_DIRFILE

The supplied dirfile was invalid.

The dirfile error may be retrieved by calling gd_error(3). A descriptive error string for the last error encountered can be obtained from a call to gd_error_string(3).

RELATED TO gd_nmfields_by_type…