size_ILEarglist()--Compute ILE Argument List Size for IBM PASE for i


  Syntax
 #include <as400_protos.h>

 size_t size_ILEarglist(const arg_type_t  *signature);  

  Default Public Authority: *USE

  Library: Standard C Library (libc.a)

  Threadsafe: Yes

Note: This function can only be used in an IBM® i PASE program. See the IBM PASE for i topic collection for more information about creating IBM PASE for i programs.

The size_ILEarglist() function computes the number of bytes of memory required to build an ILE argument list for a specific function signature.


Parameters

signature
(Input) Pointer to a list of arg_type_t values that specify the sequence and type of arguments passed to the ILE procedure. ILE procedures can accept a maximum of 400 arguments. The actual number of arguments processed by the size_ILEarglist function is determined by the number of entries in the signature list, which is determined by the location of the first ARG_END value in the list. The following values are supported in the signature list:

ARG_END (0) Specifies the end of the signature list.

ARG_INT8 (-1) Signed 1-byte integer argument.

ARG_UINT8 (-2) Unsigned 1-byte integer argument.

ARG_INT16 (-3) Signed 2-byte integer argument.

ARG_UINT16 (-4) Unsigned 2-byte integer argument.

ARG_INT32 (-5) Signed 4-byte integer argument.

ARG_UINT32 (-6) Unsigned 4-byte integer argument.

ARG_INT64 (-7) Signed 8-byte integer argument.

ARG_UINT64 (-8) Unsigned 8-byte integer argument.

ARG_FLOAT32 (-9) 4-byte floating-point argument.

ARG_FLOAT64 (-10) 8-byte floating-point argument.

ARG_FLOAT128 (-18) 16-byte floating-point argument.

ARG_MEMPTR (-11) The argument is a field of type ILEpointer.

ARG_SPCPTR (-12) The argument is a field of type ILEpointer.

ARG_SPCPTRI (-16) The argument is a field of type ILEpointer.

ARG_OPENPTR (-13) The argument is a field of type ILEpointer.

ARG_OPENPTRI (-17) The argument is a field of type ILEpointer.

ARG_MEMTS64 (-14) The argument is a field of type ts64_t.

ARG_TS64PTR (-15) The argument is a field of type ts64_t.

Any positive number
(1-32767)
The argument is an aggregate (structure or union). The value in the signature list is the length, in bytes, of the aggregate.

Authorities

size_ILEarglist requires no authority.


Return Value

size_ILEarglist returns the number of bytes required to build the ILE argument list (including storage for the ILEarglist_base type and any necessary bytes skipped for alignment between arguments), or zero if an error was detected in the signature list.


Related Information



API introduced: V4R5

[ Back to top | IBM PASE for i APIs | APIs by category ]