The FLI
:function
type allows for conversion from the C
function
type. It is typically used in conjunction with the :pointer type to reference an existing foreign function.
The default value of calling-convention is as described for define-foreign-function.
The following code lines present a definition of a pointer to a function type, and a corresponding C definition of the type. The function type is defined for a function which takes as its arguments an integer and a pointer to a void, and returns an integer value.
(:pointer (:function (:int (:pointer :void)) :int))
int (*)( int, void * )
LispWorks Foreign Language Interface User Guide and Reference Manual - 7 Dec 2011