Provided by: libgetdata-doc_0.9.0-2.2_all bug

NAME

       gd_alter_affixes — modify the field affixes of a fragments in a dirfile

SYNOPSIS

       #include <getdata.h>

       int gd_alter_affixes(DIRFILE *dirfile, int fragment_index, const char *prefix, const char
              *suffix);

DESCRIPTION

       The gd_alter_affixes() function sets the field prefix and suffix of fields defined in  the
       format  specification  fragment  given  by  fragment_index  to  prefix  and  suffix in the
       dirfile(5) database specified by dirfile.

       The field prefix and suffix are appended  to  all  field  codes  found  in  the  specified
       fragment.   If  the  parent  fragment  to  the  modified  fragment  contains field affixes
       themselves, they should be included in the  affixes  passed  to  gd_alter_affixes().   See
       EXAMPLES  below for further details.  If prefix or suffix is NULL, the corresponding affix
       will be unchanged.  To remove an affix, set it  to  the  parent  fragment's  corresponding
       affix, which may be the empty string ("").

       It is not possible to set affixes on the root format file (i.e.  fragment_index may not be
       zero).

       The dirfile argument must point to a valid DIRFILE object previously created by a call  to
       gd_open(3).

RETURN VALUE

       Upon  successful completion, gd_alter_affixes() returns zero.  On error, it returns -1 and
       sets the dirfile error to a non-zero error value.  Possible error values are:

       GD_E_ACCMODE
               The specified dirfile was opened read-only.

       GD_E_ALLOC
               The library was unable to allocate memory.

       GD_E_BAD_CODE
               The supplied prefix or suffix contained invalid characters.

       GD_E_BAD_DIRFILE
               The supplied dirfile was invalid.

       GD_E_BAD_INDEX
               The supplied index was out of range.

       GD_E_DUPLICATE
               The supplied affixes would result in  one  or  more  field  codes  duplicating  an
               existing field code.

       GD_E_PROTECTED
               The metadata of the given fragment's parent fragment was protected from change.

       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).

EXAMPLES

       Dealing with  affixes  of  parent  fragments  is  relatively  straightforward.   Say,  for
       instance,  fragment  #1 has a prefix "A" and a suffix "B" and fragment #2 is included from
       fragment #1.  In this case any prefix for fragment #2 must end with "A" and any suffix for
       fragment #2 must begin with "B".

SEE ALSO

       gd_open(3),  gd_error(3), gd_error_string(3), gd_fragment_affixes(3), gd_include_affix(3),
       dirfile(5), dirfile-format(5)