The mi_fp_retlen() function
The mi_fp_retlen() accessor function obtains the length of a return value of a user-defined function from its associated MI_FPARAM structure.
Syntax
mi_integer mi_fp_retlen(fparam_ptr, ret_pos)
MI_FPARAM *fparam_ptr;
mi_integer ret_pos;
- fparam_ptr
- A pointer to the associated MI_FPARAM structure.
- ret_pos
- The index position into the return-length array for the return
value whose length you want. For user-defined functions, the only
valid value is
0
.
Valid in client LIBMI application? | Valid in user-defined routine? |
---|---|
Yes | Yes |
Usage
The mi_fp_retlen() function
obtains the length of the routine return value at position ret_pos from
the MI_FPARAM structure that fparam_ptr references.
The MI_FPARAM structure stores information about return-value
lengths in the zero-based return-length array. To obtain information
about the nth return value, use a ret_pos value of n
-1
.
For example, the following call to mi_fp_retlen() obtains
the length for the first return value of the my_func() user-defined
function, with which fparam1 is associated: mi_integer my_func(..., fparam1)
...
MI_FPARAM *fparam1;
{
mi_integer ret_len;
...
ret_len = mi_fp_retlen(fparam1, 0);
Important: C
user-defined functions always have only one return value.
For more information about return-value information in an MI_FPARAM structure, see the HCL OneDB™ DataBlade® API Programmer's Guide.
Return values
- >=0
- The length, in bytes, of the return value at position ret_pos.
- MI_ERROR
- The function was not successful.