123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- .Dd February 15, 2008
- .Dt ffi_prep_cif 3
- .Sh NAME
- .Nm ffi_prep_cif
- .Nd Prepare a
- .Nm ffi_cif
- structure for use with
- .Nm ffi_call
- .
- .Sh SYNOPSIS
- .In ffi.h
- .Ft ffi_status
- .Fo ffi_prep_cif
- .Fa "ffi_cif *cif"
- .Fa "ffi_abi abi"
- .Fa "unsigned int nargs"
- .Fa "ffi_type *rtype"
- .Fa "ffi_type **atypes"
- .Fc
- .Sh DESCRIPTION
- The
- .Nm ffi_prep_cif
- function prepares a
- .Nm ffi_cif
- structure for use with
- .Nm ffi_call
- .
- .Fa abi
- specifies a set of calling conventions to use.
- .Fa atypes
- is an array of
- .Fa nargs
- pointers to
- .Nm ffi_type
- structs that describe the data type, size and alignment of each argument.
- .Fa rtype
- points to an
- .Nm ffi_type
- that describes the data type, size and alignment of the
- return value. Note that to call a variadic function
- .Nm ffi_prep_cif_var
- must be used instead.
- .Sh RETURN VALUES
- Upon successful completion,
- .Nm ffi_prep_cif
- returns
- .Nm FFI_OK .
- It will return
- .Nm FFI_BAD_TYPEDEF
- if
- .Fa cif
- is
- .Nm NULL
- or
- .Fa atypes
- or
- .Fa rtype
- is malformed. If
- .Fa abi
- does not refer to a valid ABI,
- .Nm FFI_BAD_ABI
- will be returned. Available ABIs are
- defined in
- .Nm <ffitarget.h> .
- .Sh SEE ALSO
- .Xr ffi 3 ,
- .Xr ffi_call 3 ,
- .Xr ffi_prep_cif_var 3
|