annotate libffi/man/ffi_prep_cif_var.3 @ 158:494b0b89df80 default tip

...
author Shinji KONO <kono@ie.u-ryukyu.ac.jp>
date Mon, 25 May 2020 18:13:55 +0900
parents 04ced10e8804
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
111
kono
parents:
diff changeset
1 .Dd January 25, 2011
kono
parents:
diff changeset
2 .Dt ffi_prep_cif_var 3
kono
parents:
diff changeset
3 .Sh NAME
kono
parents:
diff changeset
4 .Nm ffi_prep_cif_var
kono
parents:
diff changeset
5 .Nd Prepare a
kono
parents:
diff changeset
6 .Nm ffi_cif
kono
parents:
diff changeset
7 structure for use with
kono
parents:
diff changeset
8 .Nm ffi_call
kono
parents:
diff changeset
9 for variadic functions.
kono
parents:
diff changeset
10 .Sh SYNOPSIS
kono
parents:
diff changeset
11 .In ffi.h
kono
parents:
diff changeset
12 .Ft ffi_status
kono
parents:
diff changeset
13 .Fo ffi_prep_cif_var
kono
parents:
diff changeset
14 .Fa "ffi_cif *cif"
kono
parents:
diff changeset
15 .Fa "ffi_abi abi"
kono
parents:
diff changeset
16 .Fa "unsigned int nfixedargs"
kono
parents:
diff changeset
17 .Fa "unsigned int ntotalargs"
kono
parents:
diff changeset
18 .Fa "ffi_type *rtype"
kono
parents:
diff changeset
19 .Fa "ffi_type **atypes"
kono
parents:
diff changeset
20 .Fc
kono
parents:
diff changeset
21 .Sh DESCRIPTION
kono
parents:
diff changeset
22 The
kono
parents:
diff changeset
23 .Nm ffi_prep_cif_var
kono
parents:
diff changeset
24 function prepares a
kono
parents:
diff changeset
25 .Nm ffi_cif
kono
parents:
diff changeset
26 structure for use with
kono
parents:
diff changeset
27 .Nm ffi_call
kono
parents:
diff changeset
28 for variadic functions.
kono
parents:
diff changeset
29 .Fa abi
kono
parents:
diff changeset
30 specifies a set of calling conventions to use.
kono
parents:
diff changeset
31 .Fa atypes
kono
parents:
diff changeset
32 is an array of
kono
parents:
diff changeset
33 .Fa ntotalargs
kono
parents:
diff changeset
34 pointers to
kono
parents:
diff changeset
35 .Nm ffi_type
kono
parents:
diff changeset
36 structs that describe the data type, size and alignment of each argument.
kono
parents:
diff changeset
37 .Fa rtype
kono
parents:
diff changeset
38 points to an
kono
parents:
diff changeset
39 .Nm ffi_type
kono
parents:
diff changeset
40 that describes the data type, size and alignment of the
kono
parents:
diff changeset
41 return value.
kono
parents:
diff changeset
42 .Fa nfixedargs
kono
parents:
diff changeset
43 must contain the number of fixed (non-variadic) arguments.
kono
parents:
diff changeset
44 Note that to call a non-variadic function
kono
parents:
diff changeset
45 .Nm ffi_prep_cif
kono
parents:
diff changeset
46 must be used.
kono
parents:
diff changeset
47 .Sh RETURN VALUES
kono
parents:
diff changeset
48 Upon successful completion,
kono
parents:
diff changeset
49 .Nm ffi_prep_cif_var
kono
parents:
diff changeset
50 returns
kono
parents:
diff changeset
51 .Nm FFI_OK .
kono
parents:
diff changeset
52 It will return
kono
parents:
diff changeset
53 .Nm FFI_BAD_TYPEDEF
kono
parents:
diff changeset
54 if
kono
parents:
diff changeset
55 .Fa cif
kono
parents:
diff changeset
56 is
kono
parents:
diff changeset
57 .Nm NULL
kono
parents:
diff changeset
58 or
kono
parents:
diff changeset
59 .Fa atypes
kono
parents:
diff changeset
60 or
kono
parents:
diff changeset
61 .Fa rtype
kono
parents:
diff changeset
62 is malformed. If
kono
parents:
diff changeset
63 .Fa abi
kono
parents:
diff changeset
64 does not refer to a valid ABI,
kono
parents:
diff changeset
65 .Nm FFI_BAD_ABI
kono
parents:
diff changeset
66 will be returned. Available ABIs are
kono
parents:
diff changeset
67 defined in
kono
parents:
diff changeset
68 .Nm <ffitarget.h>
kono
parents:
diff changeset
69 .
kono
parents:
diff changeset
70 .Sh SEE ALSO
kono
parents:
diff changeset
71 .Xr ffi 3 ,
kono
parents:
diff changeset
72 .Xr ffi_call 3 ,
kono
parents:
diff changeset
73 .Xr ffi_prep_cif 3