19 lines
966 B
Text
19 lines
966 B
Text
|
The libffi library provides a portable, high level programming
|
||
|
interface to various calling conventions. This allows a programmer to
|
||
|
call any function specified by a call interface description at
|
||
|
run-time.
|
||
|
|
||
|
Some programs may not know at the time of compilation what arguments
|
||
|
are to be passed to a function. For instance, an interpreter may be
|
||
|
told at run-time about the number and types of arguments used to call
|
||
|
a given function. Libffi can be used in such programs to provide a
|
||
|
bridge from the interpreter program to compiled code.
|
||
|
|
||
|
Ffi stands for Foreign Function Interface. A foreign function
|
||
|
interface is the popular name for the interface that allows code
|
||
|
written in one language to call code written in another language. The
|
||
|
libffi library really only provides the lowest, machine dependent
|
||
|
layer of a fully featured foreign function interface. A layer must
|
||
|
exist above libffi that handles type conversions for values passed
|
||
|
between the two languages.
|