This is the uffi Reference Manual, version 2.0.0, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Sep 15 07:00:26 2024 GMT+0.
The main system appears first, followed by any subsystem dependency.
uffi
Universal Foreign Function Library for Common Lisp
Kevin M. Rosenberg <kmr@debian.org>
Kevin Rosenberg <kevin@rosenberg.net>
Lessor Lisp General Public License
UFFI provides a universal foreign function interface (FFI) for Common Lisp. UFFI supports CMUCL, Lispworks, and AllegroCL.
2.0.0
src
(module).
Modules are listed depth-first from the system components tree.
uffi/src
uffi
(system).
package.lisp
(file).
i18n.lisp
(file).
primitives.lisp
(file).
objects.lisp
(file).
aggregates.lisp
(file).
strings.lisp
(file).
functions.lisp
(file).
libraries.lisp
(file).
os.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
uffi/uffi.asd
uffi/src/package.lisp
uffi/src/i18n.lisp
uffi/src/primitives.lisp
uffi/src/objects.lisp
uffi/src/aggregates.lisp
uffi/src/strings.lisp
uffi/src/functions.lisp
uffi/src/libraries.lisp
uffi/src/os.lisp
uffi/src/i18n.lisp
package.lisp
(file).
src
(module).
*default-foreign-encoding*
(special variable).
*foreign-encodings*
(special variable).
foreign-encoded-octet-count
(function).
octets-to-string
(macro).
string-to-octets
(macro).
*foreign-encoding-mapping*
(special variable).
lookup-foreign-encoding
(function).
uffi/src/primitives.lisp
i18n.lisp
(file).
src
(module).
def-constant
(macro).
def-foreign-type
(macro).
def-type
(macro).
null-char-p
(macro).
%convert-from-uffi-type
(function).
*cmu-def-type-hash*
(special variable).
*cmu-sbcl-def-type-list*
(special variable).
*type-conversion-list*
(special variable).
+type-conversion-hash+
(special variable).
basic-convert-from-uffi-type
(function).
convert-from-uffi-type
(function).
make-lisp-name
(function).
uffi/src/objects.lisp
primitives.lisp
(file).
src
(module).
allocate-foreign-object
(macro).
char-array-to-pointer
(macro).
def-foreign-var
(macro).
def-pointer-var
(macro).
deref-pointer
(macro).
ensure-char-character
(macro).
ensure-char-integer
(macro).
ensure-char-storable
(macro).
free-foreign-object
(macro).
make-null-pointer
(macro).
make-pointer
(macro).
null-pointer-p
(macro).
pointer-address
(macro).
size-of-foreign-type
(function).
with-cast-pointer
(macro).
with-foreign-object
(macro).
with-foreign-objects
(macro).
uffi/src/aggregates.lisp
primitives.lisp
(file).
src
(module).
convert-from-foreign-usb8
(function).
def-array-pointer
(macro).
def-enum
(macro).
def-struct
(macro).
def-union
(macro).
deref-array
(macro).
get-slot-pointer
(macro).
get-slot-value
(macro).
*system-copy-fn*
(special variable).
+system-copy-multiplier+
(constant).
+system-copy-offset+
(constant).
process-struct-fields
(function).
uffi/src/strings.lisp
primitives.lisp
(file).
functions.lisp
(file).
aggregates.lisp
(file).
objects.lisp
(file).
src
(module).
+null-cstring-pointer+
(special variable).
allocate-foreign-string
(macro).
convert-from-cstring
(macro).
convert-from-foreign-string
(macro).
convert-to-cstring
(macro).
convert-to-foreign-string
(macro).
foreign-string-length
(function).
free-cstring
(macro).
with-cstring
(macro).
with-cstrings
(macro).
with-foreign-string
(macro).
with-foreign-strings
(macro).
%convert-to-foreign-string
(function).
char-ptr-def
(type).
strlen
(function).
uffi/src/functions.lisp
primitives.lisp
(file).
src
(module).
def-function
(macro).
%def-function
(macro).
allegro-convert-return-type
(function).
convert-lispworks-args
(function).
funcallable-lambda-list
(function).
preprocess-args
(function).
preprocess-names
(function).
process-function-args
(function).
process-one-function-arg
(function).
uffi/src/libraries.lisp
package.lisp
(file).
src
(module).
default-foreign-library-type
(function).
find-foreign-library
(function).
foreign-library-types
(function).
load-foreign-library
(function).
*loaded-libraries*
(special variable).
convert-supporting-libraries-to-string
(function).
uffi/src/os.lisp
package.lisp
(file).
src
(module).
getenv
(function).
run-shell-command
(function).
Packages are listed by definition order.
uffi
common-lisp
.
*default-foreign-encoding*
(special variable).
*foreign-encodings*
(special variable).
+null-cstring-pointer+
(special variable).
allocate-foreign-object
(macro).
allocate-foreign-string
(macro).
char-array-to-pointer
(macro).
convert-from-cstring
(macro).
convert-from-foreign-string
(macro).
convert-from-foreign-usb8
(function).
convert-to-cstring
(macro).
convert-to-foreign-string
(macro).
def-array-pointer
(macro).
def-constant
(macro).
def-enum
(macro).
def-foreign-type
(macro).
def-foreign-var
(macro).
def-function
(macro).
def-pointer-var
(macro).
def-struct
(macro).
def-type
(macro).
def-union
(macro).
default-foreign-library-type
(function).
deref-array
(macro).
deref-pointer
(macro).
ensure-char-character
(macro).
ensure-char-integer
(macro).
ensure-char-storable
(macro).
find-foreign-library
(function).
foreign-encoded-octet-count
(function).
foreign-library-types
(function).
foreign-string-length
(function).
free-cstring
(macro).
free-foreign-object
(macro).
get-slot-pointer
(macro).
get-slot-value
(macro).
getenv
(function).
load-foreign-library
(function).
make-null-pointer
(macro).
make-pointer
(macro).
null-char-p
(macro).
null-pointer-p
(macro).
octets-to-string
(macro).
pointer-address
(macro).
run-shell-command
(function).
size-of-foreign-type
(function).
string-to-octets
(macro).
with-cast-pointer
(macro).
with-cstring
(macro).
with-cstrings
(macro).
with-foreign-object
(macro).
with-foreign-objects
(macro).
with-foreign-string
(macro).
with-foreign-strings
(macro).
%convert-from-uffi-type
(function).
%convert-to-foreign-string
(function).
%def-function
(macro).
*cmu-def-type-hash*
(special variable).
*cmu-sbcl-def-type-list*
(special variable).
*foreign-encoding-mapping*
(special variable).
*loaded-libraries*
(special variable).
*system-copy-fn*
(special variable).
*type-conversion-list*
(special variable).
+system-copy-multiplier+
(constant).
+system-copy-offset+
(constant).
+type-conversion-hash+
(special variable).
allegro-convert-return-type
(function).
basic-convert-from-uffi-type
(function).
char-ptr-def
(type).
convert-from-uffi-type
(function).
convert-lispworks-args
(function).
convert-supporting-libraries-to-string
(function).
funcallable-lambda-list
(function).
lookup-foreign-encoding
(function).
make-lisp-name
(function).
preprocess-args
(function).
preprocess-names
(function).
process-function-args
(function).
process-one-function-arg
(function).
process-struct-fields
(function).
strlen
(function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
Normalized name of default external character format to use
for foreign string conversions. nil means use implementation default
encoding.
List of normalized names of external formats support by underlying implementation.
Allocates an instance of TYPE. If size is specified, then allocate an array of TYPE with size SIZE. The TYPE parameter is evaluated.
uffi
.
Converts a string from a c-call. Same as convert-from-foreign-string, except that LW/CMU automatically converts strings from c-calls.
uffi
.
uffi
.
Macro to define a constant and to export it
uffi
.
Creates a constants for a C type enum list, symbols are created
in the created in the current package. The symbol is the concatenation
of the enum-name name, separator-string, and field-name
uffi
.
Generates a (deftype) statement for CL. Currently, only CMUCL supports takes advantage of this optimization.
uffi
.
Converts a vector of octets to a Lisp string.
uffi
.
Returns string naming default library type for platform
uffi
.
Looks for a foreign library. directories can be a single string or a list of strings of candidate directories. Use default library type if type is not specified.
uffi
.
Returns the octets required to represent the string when passed to a ~ foreign function.
Returns list of string naming possible library types for platform, sorted by preference
uffi
.
Return the value of the environment variable.
uffi
.
Interpolate ARGS into CONTROL-STRING as if by FORMAT, and synchronously execute the result using a Bourne-compatible shell, with output to *trace-output*. Returns the shell’s exit code.
Conversions in SBCL for def-foreign-type are different than in def-function
uffi
.
Mapping between normalized external format name and implementation name.
List of foreign libraries loaded. Used to prevent reloading a library
uffi
.
Converts from a uffi type to an implementation specific type
uffi
.
Jump to: | %
A B C D E F G L M N O P R S W |
---|
Jump to: | %
A B C D E F G L M N O P R S W |
---|
Jump to: | *
+
C S |
---|
Jump to: | *
+
C S |
---|
Jump to: | A C F I L M O P S T U |
---|
Jump to: | A C F I L M O P S T U |
---|