Fprojcpy
, Fprojcpy32
-projection and copy on buffer
#include <stdio.h>
#include "fml.h"
int
Fprojcpy(FBFR *dest, FBFR *src, FLDID *fieldid)
#include "fml32.h"
int
Fprojcpy32(FBFR32 *dest, FBFR32 *src, FLDID32 *fieldid)
Fprojcpy
() is similar to Fproj
(3) but the projection is done into a destination buffer instead of in-place. dest and src are pointers to the destination and source fielded buffers respectively. fieldid is a pointer to an array of field identifiers. Any fields in the destination buffer are first deleted and the results of the projection on the source buffer are put into the destination buffer. The source buffer is not changed. The array of field identifiers may be re-arranged (if they are not already in numeric order, they are sorted).
This function can fail for lack of space; it can be re-issued after allocating enough additional space to complete the operation.
Fprojcpy32
is used with 32-bit FML.
This function returns \-1 on error and sets Ferror
to indicate the error condition.
Under the following conditions, Fprojcpy
() fails and sets Ferror
to:
[FALIGNERR]
[FNOTFLD]
[FNOSPACE]
Fintro
(3), Fjoin
(3), Fojoin
(3), Fproj
(3)