All IDL definitions map onto FLI definitions, mirroring the mapping that
does for C/C++. However, IDL provides some additional type information that C/C++ lacks (for instance the
attribute), so there are some additional conversions that Lisp performs when it can.
The COM API uses the information from the IDL to convert data between FLI types and Lisp types where appropriate for arguments and return values of COM method calls. In particular:
In COM, all parameters have a
which can be either
(referred to as
here). Arguments and values for client-side COM method calls reflect the direction as described in the following sections. For a complete version of the example code, see the file
in the LispWorks installation.