![]() |
![]() |
|
|
Fdelete, Fdelete32(3fml)
Name
Fdelete(), Fdelete32() - delete list of fields from buffer
Synopsis
#include <stdio.h>
#include "fml.h"
int
Fdelete(FBFR *fbfr, FLDID *fieldid)
#include "fml32.h"
int
Fdelete32(FBFR32 *fbfr, FLDID32 *fieldid)
Description
Fdelete() deletes all occurrences of all fields listed in the array of field identifiers, fieldid[]. The last entry in the array must be BADFLDID. fbfr is a pointer to a fielded buffer. fieldid is a pointer to an array of field identifiers. This is a more efficient way of deleting several fields from a buffer instead of using several Fdelall() calls. The update is done in-place. The array of field identifiers may be rearranged by Fdelete() (they are sorted, if not already, in numeric order).
For values of type FLD_PTR, Fdelete32() deletes the FLD_PTR field occurrence without changing the referenced buffer or freeing the pointer. The data buffer is treated as an opaque pointer.
Fdelete() returns success even if no fields are deleted from the fielded buffer.
Fdelete32() is used with 32-bit FML.
A thread in a multithreaded application may issue a call to Fdelete() or Fdelete32() while running in any context state, including TPINVALIDCONTEXT.
Return Values
This function returns -1 on error and sets Ferror to indicate the error condition.
Errors
Under the following conditions, Fdelete() fails and sets Ferror to:
The buffer does not begin on the proper boundary.
The buffer is not a fielded buffer or has not been initialized by Finit().
A field identifier is specified which is not valid.
See Also
Introduction to FML Functions, Fdel, Fdel32(3fml), Fdelall, Fdelall32(3fml)
![]() |
![]() |
![]() |
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
|