The cffi Reference Manual

Next: , Previous: , Up: (dir)   [Contents][Index]

The cffi Reference Manual

This is the cffi Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Mon Aug 15 03:23:59 2022 GMT+0.

Table of Contents


1 Introduction

Build Status

CFFI, the Common Foreign Function Interface, purports to be a portable foreign function interface for Common Lisp. The CFFI library is composed of a Lisp-implementation-specific backend in the CFFI-SYS package, and a portable frontend in the CFFI package.

The CFFI-SYS backend package defines a low-level interface to the native FFI support in the Lisp implementation. It offers operators for allocating and dereferencing foreign memory, calling foreign functions, and loading shared libraries.

The CFFI frontend provides a declarative interface for defining foreign functions, structures, typedefs, enumerated types, etc. It is implemented in portable ANSI CL making use of the low-level operators exported by CFFI-SYS.

CFFI/C2FFI is an ASDF-integrated mechanism to automatically generate a complete CFFI binding for a C project using the JSON output of c2ffi. c2ffi generates its output by using LLVM/Clang as a library to parse any C project. Until CFFI/C2FFI is properly documented, please see these projects as examples: here, here, here, and here.

Please consult the manual for further details, including installation instructions.

Please visit Launchpad for bug reports and feature suggestions.


2 Systems

The main system appears first, followed by any subsystem dependency.


Previous: , Up: Systems   [Contents][Index]

2.1 cffi

The Common Foreign Function Interface

Maintainer

Luis Oliveira <loliveira@common-lisp.net>

Author

James Bielman <jamesjb@jamesjb.com>

License

MIT

Dependencies
  • uiop (system).
  • alexandria (system).
  • trivial-features (system).
  • babel (system).
Source

cffi.asd.

Child Component

src (module).


Next: , Previous: , Up: The cffi Reference Manual   [Contents][Index]

3 Modules

Modules are listed depth-first from the system components tree.


Previous: , Up: Modules   [Contents][Index]

3.1 cffi/src

Source

cffi.asd.

Parent Component

cffi (system).

Child Components

4 Files

Files are sorted by type and then listed depth-first from the systems components trees.


Previous: , Up: Files   [Contents][Index]

4.1 Lisp


Next: , Previous: , Up: Lisp   [Contents][Index]

4.1.1 cffi/cffi.asd

Source

cffi.asd.

Parent Component

cffi (system).

ASDF Systems

cffi.


Next: , Previous: , Up: Lisp   [Contents][Index]

4.1.2 cffi/src/cffi-sbcl.lisp

Source

cffi.asd.

Parent Component

src (module).

Packages

cffi-sys.

Public Interface
Internals

4.1.3 cffi/src/package.lisp

Dependency

cffi-sbcl.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Packages

cffi.


4.1.4 cffi/src/utils.lisp

Dependency

package.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Internals

4.1.5 cffi/src/libraries.lisp

Dependency

utils.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Public Interface
Internals

4.1.6 cffi/src/early-types.lisp

Dependency

libraries.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Public Interface
Internals

4.1.7 cffi/src/types.lisp

Dependency

early-types.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Public Interface
Internals

4.1.8 cffi/src/enum.lisp

Dependency

types.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Public Interface
Internals

4.1.9 cffi/src/strings.lisp

Dependency

enum.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Public Interface
Internals

4.1.10 cffi/src/structures.lisp

Dependency

strings.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Public Interface

4.1.11 cffi/src/functions.lisp

Dependency

structures.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Public Interface
Internals

4.1.12 cffi/src/foreign-vars.lisp

Dependency

functions.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Public Interface
Internals

4.1.13 cffi/src/features.lisp

Dependency

foreign-vars.lisp (file).

Source

cffi.asd.

Parent Component

src (module).

Packages

cffi-features.

Public Interface

cffi-feature-p (function).


5 Packages

Packages are listed by definition order.


Next: , Previous: , Up: Packages   [Contents][Index]

5.1 cffi-sys

Source

cffi-sbcl.lisp.

Use List
  • common-lisp.
  • sb-alien.
Used By List

cffi.

Public Interface
Internals

Next: , Previous: , Up: Packages   [Contents][Index]

5.2 cffi

Source

package.lisp.

Use List
  • babel-encodings.
  • cffi-sys.
  • common-lisp.
Public Interface
Internals

Previous: , Up: Packages   [Contents][Index]

5.3 cffi-features

Source

features.lisp.

Use List

common-lisp.

Public Interface

cffi-feature-p (function).


6 Definitions

Definitions are sorted by export status, category, package, and then by lexicographic order.


Next: , Previous: , Up: Definitions   [Contents][Index]

6.1 Public Interface


Next: , Previous: , Up: Public Interface   [Contents][Index]

6.1.1 Special variables

Special Variable: *built-in-float-types*

List of real float types supported by CFFI.

Package

cffi.

Source

types.lisp.

Special Variable: *built-in-foreign-types*
Package

cffi.

Source

early-types.lisp.

Special Variable: *built-in-integer-types*

List of integer types supported by CFFI.

Package

cffi.

Source

types.lisp.

Special Variable: *darwin-framework-directories*

List of directories where Frameworks are searched for.

Package

cffi.

Source

libraries.lisp.

Special Variable: *default-foreign-encoding*

Default foreign encoding.

Package

cffi.

Source

strings.lisp.

Special Variable: *foreign-library-directories*

List onto which user-defined library paths can be pushed.

Package

cffi.

Source

libraries.lisp.

Special Variable: *other-builtin-types*

List of types other than integer or float built in to CFFI.

Package

cffi.

Source

types.lisp.


6.1.2 Macros

Macro: %defcallback (name rettype arg-names arg-types body &key convention)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Macro: %foreign-funcall (name args &key library convention)

Perform a foreign function call, document it more later.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Macro: %foreign-funcall-pointer (ptr args &key convention)

Funcall a pointer to a foreign function.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Macro: callback (name)
Package

cffi.

Source

functions.lisp.

Macro: defbitfield (name-and-options &body masks)

Define an foreign enumerated type.

Package

cffi.

Source

enum.lisp.

Macro: defcallback (name-and-options return-type args &body body)
Package

cffi.

Source

functions.lisp.

Macro: defcenum (name-and-options &body enum-list)

Define an foreign enumerated type.

Package

cffi.

Source

enum.lisp.

Macro: defcfun (name-and-options return-type &body args)

Defines a Lisp function that calls a foreign function.

Package

cffi.

Source

functions.lisp.

Macro: defcstruct (name-and-options &body fields)

Define the layout of a foreign structure.

Package

cffi.

Source

types.lisp.

Macro: defctype (name base-type &optional documentation)

Utility macro for simple C-like typedefs.

Package

cffi.

Source

early-types.lisp.

Macro: defcunion (name-and-options &body fields)

Define the layout of a foreign union.

Package

cffi.

Source

types.lisp.

Macro: defcvar (name-and-options type &optional documentation)

Define a foreign global variable.

Package

cffi.

Source

foreign-vars.lisp.

Macro: define-c-struct-wrapper (class-and-type supers &optional slots)

Define a new class with CLOS slots matching those of a foreign struct type. An INITIALIZE-INSTANCE method is defined which takes a :POINTER initarg that is used to store the slots of a foreign object. This pointer is only used for initialization and it is not retained.

CLASS-AND-TYPE is either a list of the form (class-name struct-type) or a single symbol naming both. The class will inherit SUPERS. If a list of SLOTS is specified, only those slots will be defined and stored.

Package

cffi.

Source

types.lisp.

Macro: define-foreign-library (name-and-options &body pairs)

Defines a foreign library NAME that can be posteriorly used with the USE-FOREIGN-LIBRARY macro.

Package

cffi.

Source

libraries.lisp.

Macro: define-foreign-type (name supers slots &rest options)
Package

cffi.

Source

early-types.lisp.

Macro: define-parse-method (name lambda-list &body body)

Define a type parser on NAME and lists whose CAR is NAME.

Package

cffi.

Source

early-types.lisp.

Macro: define-translation-method ((object type method) &body body)

Define a translation method for the foreign structure type; ’method is one of :into, :from, or :to, meaning relation to foreign memory. If :into, the variable ’pointer is the foreign pointer. Note: type must be defined and loaded before this macro is expanded, and just the bare name (without :struct) should be specified.

Package

cffi.

Source

structures.lisp.

Macro: foreign-funcall (name-and-options &rest args)

Wrapper around %FOREIGN-FUNCALL that translates its arguments.

Package

cffi.

Source

functions.lisp.

Macro: foreign-funcall-pointer (pointer options &rest args)
Package

cffi.

Source

functions.lisp.

Macro: foreign-funcall-pointer-varargs (pointer options fixed-args &rest varargs)

Wrapper around %FOREIGN-FUNCALL-POINTER that translates its arguments and does type promotion for the variadic arguments.

Package

cffi.

Source

functions.lisp.

Macro: foreign-funcall-varargs (name-and-options fixed-args &rest varargs)

Wrapper around %FOREIGN-FUNCALL that translates its arguments and does type promotion for the variadic arguments.

Package

cffi.

Source

functions.lisp.

Macro: incf-pointer (place &optional offset)
Package

cffi.

Source

types.lisp.

Macro: translation-forms-for-class (class type-class)

Make forms for translation of foreign structures to and from a standard class. The class slots are assumed to have the same name as the foreign structure.

Package

cffi.

Source

structures.lisp.

Macro: use-foreign-library (name)
Package

cffi.

Source

libraries.lisp.

Macro: with-foreign-array ((var lisp-array array-type) &body body)

Bind var to a foreign array containing lisp-array elements in body.

Package

cffi.

Source

types.lisp.

Macro: with-foreign-object ((var type &optional count) &body body)

Bind VAR to a pointer to COUNT objects of TYPE during BODY. The buffer has dynamic extent and may be stack allocated.

Package

cffi.

Source

types.lisp.

Macro: with-foreign-objects (bindings &body body)
Package

cffi.

Source

types.lisp.

Macro: with-foreign-pointer ((var size &optional size-var) &body body)

Bind VAR to SIZE bytes of foreign memory during BODY. The pointer in VAR is invalid beyond the dynamic extent of BODY, and may be stack-allocated if supported by the implementation. If SIZE-VAR is supplied, it will be bound to SIZE during BODY.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Macro: with-foreign-pointer-as-string ((var-or-vars size &rest args) &body body)

VAR-OR-VARS is not evaluated and should be a list of the form (VAR &OPTIONAL SIZE-VAR) or just a VAR symbol. VAR is bound to a foreign buffer of size SIZE within BODY. The return value is constructed by calling FOREIGN-STRING-TO-LISP on the foreign buffer along with ARGS.

Package

cffi.

Source

strings.lisp.

Macro: with-foreign-slots ((vars ptr type) &body body)

Create local symbol macros for each var in VARS to reference foreign slots in PTR of TYPE. Similar to WITH-SLOTS.
Each var can be of the form: slot-name - in which case slot-name will be bound to the value of the slot or: (:pointer slot-name) - in which case slot-name will be bound to the pointer to that slot.

Package

cffi.

Source

types.lisp.

Macro: with-foreign-string ((var-or-vars lisp-string &rest args) &body body)

VAR-OR-VARS is not evaluated and should be a list of the form (VAR &OPTIONAL BYTE-SIZE-VAR) or just a VAR symbol. VAR is bound to a foreign string containing LISP-STRING in BODY. When BYTE-SIZE-VAR is specified then bind the C buffer size (including the possible null terminator(s)) to this variable.

Package

cffi.

Source

strings.lisp.

Macro: with-foreign-strings (bindings &body body)

See WITH-FOREIGN-STRING’s documentation.

Package

cffi.

Source

strings.lisp.

Macro: with-pointer-to-vector-data ((ptr-var vector) &body body)

Bind PTR-VAR to a foreign pointer to the data in VECTOR.

Package

cffi-sys.

Source

cffi-sbcl.lisp.


Next: , Previous: , Up: Public Interface   [Contents][Index]

6.1.3 Compiler macros

Compiler Macro: %mem-ref (ptr type &optional offset)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Compiler Macro: %mem-set (value ptr type &optional offset)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Compiler Macro: convert-from-foreign (value type)
Package

cffi.

Source

early-types.lisp.

Compiler Macro: convert-into-foreign-memory (value type ptr)
Package

cffi.

Source

early-types.lisp.

Compiler Macro: convert-to-foreign (value type)
Package

cffi.

Source

early-types.lisp.

Compiler Macro: foreign-alloc (type &rest args &key count &allow-other-keys)
Package

cffi.

Source

types.lisp.

Compiler Macro: foreign-bitfield-symbols (type value)

Optimize for when TYPE and SYMBOLS are constant.

Package

cffi.

Source

enum.lisp.

Compiler Macro: foreign-bitfield-value (type symbols)

Optimize for when TYPE and SYMBOLS are constant.

Package

cffi.

Source

enum.lisp.

Compiler Macro: foreign-slot-pointer (ptr type slot-name)
Package

cffi.

Source

types.lisp.

Compiler Macro: foreign-slot-value (ptr type slot-name)

Optimizer for FOREIGN-SLOT-VALUE when TYPE is constant.

Package

cffi.

Source

types.lisp.

Compiler Macro: inc-pointer (pointer offset)
Package

cffi-sys.

Source

types.lisp.

Compiler Macro: mem-aptr (ptr type &optional index)

The pointer to the element.

Package

cffi.

Source

types.lisp.

Compiler Macro: mem-aref (ptr type &optional index)

Compiler macro to open-code MEM-AREF when TYPE (and eventually INDEX).

Package

cffi.

Source

types.lisp.

Compiler Macro: mem-ref (ptr type &optional offset)

Compiler macro to open-code MEM-REF when TYPE is constant.

Package

cffi.

Source

types.lisp.


6.1.4 Setf expanders

Setf Expander: (setf foreign-slot-value) (ptr type slot-name)

SETF expander for FOREIGN-SLOT-VALUE.

Package

cffi.

Source

types.lisp.

Reader

foreign-slot-value (function).

Setf Expander: (setf mem-aref) (ptr type &optional index)

SETF expander for MEM-AREF.

Package

cffi.

Source

types.lisp.

Reader

mem-aref (function).

Setf Expander: (setf mem-ref) (ptr type &optional offset)

SETF expander for MEM-REF that doesn’t rebind TYPE.
This is necessary for the compiler macro on MEM-SET to be able to open-code (SETF MEM-REF) forms.

Package

cffi.

Source

types.lisp.

Reader

mem-ref (function).


6.1.5 Ordinary functions

Function: %callback (name)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: %close-foreign-library (handle)

Closes a foreign library.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: %foreign-alloc (size)

Allocate SIZE bytes on the heap and return a pointer.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: %foreign-symbol-pointer (name library)

Returns a pointer to a foreign symbol NAME.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: %foreign-type-alignment (type-keyword)

Return the alignment in bytes of a foreign type.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: %foreign-type-size (type-keyword)

Return the size in bytes of a foreign type.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: %load-foreign-library (name path)

Load a foreign library.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: %mem-ref (ptr type &optional offset)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: %mem-set (value ptr type &optional offset)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: canonicalize-symbol-name-case (name)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: cffi-feature-p (feature-expression)

Matches a FEATURE-EXPRESSION against those symbols in *FEATURES* that belong to the CFFI-FEATURES package.

Package

cffi-features.

Source

features.lisp.

Function: close-foreign-library (library)

Closes a foreign library.

Package

cffi.

Source

libraries.lisp.

Function: convert-from-foreign (value type)
Package

cffi.

Source

early-types.lisp.

Function: convert-into-foreign-memory (value type ptr)
Package

cffi.

Source

early-types.lisp.

Function: convert-to-foreign (value type)
Package

cffi.

Source

early-types.lisp.

Function: foreign-alloc (type &key initial-element initial-contents count null-terminated-p)

Allocate enough memory to hold COUNT objects of type TYPE. If INITIAL-ELEMENT is supplied, each element of the newly allocated memory is initialized with its value. If INITIAL-CONTENTS is supplied, each of its elements will be used to initialize the contents of the newly allocated memory.

Package

cffi.

Source

types.lisp.

Function: foreign-aref (ptr array-type &rest indexes)
Package

cffi.

Source

types.lisp.

Function: (setf foreign-aref) (ptr array-type &rest indexes)
Package

cffi.

Source

types.lisp.

Function: foreign-array-alloc (array array-type)

Allocate a foreign array containing the elements of lisp array. The foreign array must be freed with foreign-array-free.

Package

cffi.

Source

types.lisp.

Function: foreign-array-free (ptr)

Free a foreign array allocated by foreign-array-alloc.

Package

cffi.

Source

types.lisp.

Function: foreign-array-to-lisp (pointer array-type &rest make-array-args)

Copy elements from pointer into a Lisp array. ARRAY-TYPE must be a CFFI array type; the type of the resulting Lisp array can be defined in MAKE-ARRAY-ARGS that are then passed to MAKE-ARRAY. If POINTER is a null pointer, returns NIL.

Package

cffi.

Source

types.lisp.

Function: foreign-bitfield-symbol-list (bitfield-type)

Return a list of SYMBOLS defined in BITFIELD-TYPE.

Package

cffi.

Source

enum.lisp.

Function: foreign-bitfield-symbols (type value)

Convert an integer VALUE into a list of matching symbols according to the bitfield TYPE.

Package

cffi.

Source

enum.lisp.

Function: foreign-bitfield-value (type symbols)

Convert a list of symbols into an integer according to the TYPE bitfield.

Package

cffi.

Source

enum.lisp.

Function: foreign-enum-keyword (type value &key errorp)

Convert an integer VALUE into a keyword according to the enum TYPE.

Package

cffi.

Source

enum.lisp.

Function: foreign-enum-keyword-list (enum-type)

Return a list of KEYWORDS defined in ENUM-TYPE.

Package

cffi.

Source

enum.lisp.

Function: foreign-enum-value (type keyword &key errorp)

Convert a KEYWORD into an integer according to the enum TYPE.

Package

cffi.

Source

enum.lisp.

Function: foreign-free (ptr)

Free a PTR allocated by FOREIGN-ALLOC.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: foreign-library-loaded-p (lib)
Package

cffi.

Source

libraries.lisp.

Function: foreign-library-pathname (lib)
Package

cffi.

Source

libraries.lisp.

Function: foreign-library-type (lib)
Package

cffi.

Source

libraries.lisp.

Function: foreign-slot-count (type slot-name)

Return the number of items in SLOT in a struct TYPE.

Package

cffi.

Source

types.lisp.

Function: foreign-slot-names (type)

Returns a list of TYPE’s slot names in no particular order.

Package

cffi.

Source

types.lisp.

Function: foreign-slot-offset (type slot-name)

Return the offset of SLOT in a struct TYPE.

Package

cffi.

Source

types.lisp.

Function: foreign-slot-pointer (ptr type slot-name)

Return the address of SLOT-NAME in the structure at PTR.

Package

cffi.

Source

types.lisp.

Function: foreign-slot-type (type slot-name)

Return the type of SLOT in a struct TYPE.

Package

cffi.

Source

types.lisp.

Function: foreign-slot-value (ptr type slot-name)

Return the value of SLOT-NAME in the foreign structure at PTR.

Package

cffi.

Source

types.lisp.

Setf expander for this function

(setf foreign-slot-value).

Function: foreign-string-alloc (string &key encoding null-terminated-p start end)

Allocate a foreign string containing Lisp string STRING. The string must be freed with FOREIGN-STRING-FREE.

Package

cffi.

Source

strings.lisp.

Function: foreign-string-free (ptr)

Free a foreign string allocated by FOREIGN-STRING-ALLOC.

Package

cffi.

Source

strings.lisp.

Function: foreign-string-to-lisp (pointer &key offset count max-chars encoding)

Copy at most COUNT bytes from POINTER plus OFFSET encoded in ENCODING into a Lisp string and return it. If POINTER is a null pointer, NIL is returned.

Package

cffi.

Source

strings.lisp.

Function: foreign-symbol-pointer (name &key library)
Package

cffi.

Source

foreign-vars.lisp.

Function: free-converted-object (value type param)
Package

cffi.

Source

early-types.lisp.

Function: get-callback (symbol)
Package

cffi.

Source

functions.lisp.

Function: get-var-pointer (symbol)

Return a pointer to the foreign global variable relative to SYMBOL.

Package

cffi.

Source

foreign-vars.lisp.

Function: inc-pointer (ptr offset)

Return a pointer pointing OFFSET bytes past PTR.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: lisp-array-to-foreign (array pointer array-type)

Copy elements from a Lisp array to POINTER. ARRAY-TYPE must be a CFFI array type.

Package

cffi.

Source

types.lisp.

Function: lisp-string-to-foreign (string buffer bufsize &key start end offset encoding)
Package

cffi.

Source

strings.lisp.

Function: list-foreign-libraries (&key loaded-only type)

Return a list of defined foreign libraries.
If LOADED-ONLY is non-null only loaded libraries are returned. TYPE restricts the output to a specific library type: if NIL all libraries are returned.

Package

cffi.

Source

libraries.lisp.

Function: load-foreign-library (library &key search-path)

Loads a foreign LIBRARY which can be a symbol denoting a library defined through DEFINE-FOREIGN-LIBRARY; a pathname or string in which case we try to load it directly first then search for it in *FOREIGN-LIBRARY-DIRECTORIES*; or finally list: either (:or lib1 lib2) or (:framework <framework-name>). The option :CANARY can specify a symbol that will be searched to detect if the library is already loaded, in which case DEFINE-FOREIGN-LIBRARY will mark the library as loaded and return.

Package

cffi.

Source

libraries.lisp.

Function: make-pointer (address)

Return a pointer pointing to ADDRESS.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: make-shareable-byte-vector (size)

Create a Lisp vector of SIZE bytes that can be passed to WITH-POINTER-TO-VECTOR-DATA.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: mem-aptr (ptr type &optional index)

The pointer to the element.

Package

cffi.

Source

types.lisp.

Function: mem-aref (ptr type &optional index)

Like MEM-REF except for accessing 1d arrays.

Package

cffi.

Source

types.lisp.

Setf expander for this function

(setf mem-aref).

Function: mem-ref (ptr type &optional offset)

Return the value of TYPE at OFFSET bytes from PTR. If TYPE is aggregate, we don’t return its ’value’ but a pointer to it, which is PTR itself.

Package

cffi.

Source

types.lisp.

Setf expander for this function

(setf mem-ref).

Function: native-namestring (pathname)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: null-pointer ()

Construct and return a null pointer.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: null-pointer-p (ptr)

Return true if PTR is a null pointer.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: pointer-address (ptr)

Return the address pointed to by PTR.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: pointer-eq (ptr1 ptr2)

Return true if PTR1 and PTR2 point to the same address.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: pointerp (ptr)

Return true if PTR is a foreign pointer.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: reload-foreign-libraries (&key test)

(Re)load all currently loaded foreign libraries.

Package

cffi.

Source

libraries.lisp.


6.1.6 Generic functions

Generic Function: expand-from-foreign (value type)
Package

cffi.

Source

early-types.lisp.

Methods
Method: expand-from-foreign (value (type foreign-bitfield))
Source

enum.lisp.

Method: expand-from-foreign (value (type foreign-boolean-type))

Optimization for the :boolean type.

Source

types.lisp.

Method: expand-from-foreign (value (type enhanced-typedef))
Method: expand-from-foreign (value (type translatable-foreign-type))
Method: expand-from-foreign :around (value (type translatable-foreign-type))
Method: expand-from-foreign (value type)
Generic Function: expand-into-foreign-memory (value type ptr)
Package

cffi.

Source

early-types.lisp.

Methods
Method: expand-into-foreign-memory (value (type enhanced-typedef) ptr)
Method: expand-into-foreign-memory (value (type translatable-foreign-type) ptr)
Method: expand-into-foreign-memory :around (value (type translatable-foreign-type) ptr)
Method: expand-into-foreign-memory (value type ptr)
Generic Function: expand-to-foreign (value type)
Package

cffi.

Source

early-types.lisp.

Methods
Method: expand-to-foreign (value (type foreign-bitfield))
Source

enum.lisp.

Method: expand-to-foreign (value (type foreign-enum))
Source

enum.lisp.

Method: expand-to-foreign (value (type foreign-boolean-type))

Optimization for the :boolean type.

Source

types.lisp.

Method: expand-to-foreign (value (type enhanced-typedef))
Method: expand-to-foreign (value (type translatable-foreign-type))
Method: expand-to-foreign :around (value (type translatable-foreign-type))
Method: expand-to-foreign (value type)
Generic Function: expand-to-foreign-dyn (value var body type)
Package

cffi.

Source

early-types.lisp.

Methods
Method: expand-to-foreign-dyn (value var body (type enhanced-typedef))
Method: expand-to-foreign-dyn (value var body (type enhanced-foreign-type))
Method: expand-to-foreign-dyn :around (value var body (type enhanced-foreign-type))
Method: expand-to-foreign-dyn (value var body type)
Generic Reader: foreign-library-load-state (object)
Package

cffi.

Methods
Reader Method: foreign-library-load-state ((foreign-library foreign-library))

automatically generated reader method

Source

libraries.lisp.

Target Slot

load-state.

Generic Writer: (setf foreign-library-load-state) (object)
Package

cffi.

Methods
Writer Method: (setf foreign-library-load-state) ((foreign-library foreign-library))

automatically generated writer method

Source

libraries.lisp.

Target Slot

load-state.

Generic Reader: foreign-library-name (object)
Package

cffi.

Methods
Reader Method: foreign-library-name ((foreign-library foreign-library))

automatically generated reader method

Source

libraries.lisp.

Target Slot

name.

Generic Writer: (setf foreign-library-name) (object)
Package

cffi.

Methods
Writer Method: (setf foreign-library-name) ((foreign-library foreign-library))

automatically generated writer method

Source

libraries.lisp.

Target Slot

name.

Generic Function: foreign-type-alignment (foreign-type)

Return the structure alignment in bytes of a foreign type.

Package

cffi.

Source

early-types.lisp.

Methods
Method: foreign-type-alignment (type)

Return the alignment in bytes of a foreign type.

Source

types.lisp.

Method: foreign-type-alignment ((type foreign-array-type))
Source

types.lisp.

Method: foreign-type-alignment ((type foreign-type-alias))

Return the alignment of a foreign typedef.

Method: foreign-type-alignment ((type foreign-struct-type))

Return the alignment requirements for this struct.

Method: foreign-type-alignment ((type foreign-built-in-type))

Return the alignment of a built-in type.

Generic Function: foreign-type-size (foreign-type)

Return the size in bytes of a foreign type.

Package

cffi.

Source

early-types.lisp.

Methods
Method: foreign-type-size ((type foreign-array-type))
Source

types.lisp.

Method: foreign-type-size ((type foreign-type-alias))

Return the size in bytes of a foreign typedef.

Method: foreign-type-size ((type foreign-struct-type))

Return the size in bytes of a foreign structure type.

Method: foreign-type-size ((type foreign-built-in-type))

Return the size of a built-in type.

Method: foreign-type-size (type)

Return the size in bytes of a foreign type.

Generic Function: free-translated-object (value type param)
Package

cffi.

Source

early-types.lisp.

Methods
Method: free-translated-object (ptr (type foreign-struct-type) freep)
Source

structures.lisp.

Method: free-translated-object (ptr (type foreign-string-type) free-p)
Source

strings.lisp.

Method: free-translated-object (pointer (type foreign-array-type) param)
Source

types.lisp.

Method: free-translated-object (value (type enhanced-typedef) param)
Method: free-translated-object (value type param)
Generic Function: translate-camelcase-name (name &key upper-initial-p special-words)
Package

cffi.

Source

functions.lisp.

Methods
Method: translate-camelcase-name ((name string) &key upper-initial-p special-words)
Method: translate-camelcase-name ((name symbol) &key upper-initial-p special-words)
Generic Function: translate-from-foreign (value type)
Package

cffi.

Source

early-types.lisp.

Methods
Method: translate-from-foreign (p (type foreign-struct-type))
Source

structures.lisp.

Method: translate-from-foreign (value (type foreign-string+ptr-type))
Source

strings.lisp.

Method: translate-from-foreign (ptr (type foreign-string-type))
Source

strings.lisp.

Method: translate-from-foreign (value (type foreign-bitfield))
Source

enum.lisp.

Method: translate-from-foreign (value (type foreign-enum))
Source

enum.lisp.

Method: translate-from-foreign (value (type foreign-boolean-type))
Source

types.lisp.

Method: translate-from-foreign (value (type foreign-type-wrapper))
Source

types.lisp.

Method: translate-from-foreign (pointer (type foreign-array-type))
Source

types.lisp.

Method: translate-from-foreign (value (type enhanced-typedef))
Method: translate-from-foreign (value type)
Generic Function: translate-into-foreign-memory (value type pointer)

Translate the Lisp value into the foreign memory location given by pointer. Return value is not used.

Package

cffi.

Source

early-types.lisp.

Methods
Method: translate-into-foreign-memory ((object list) (type foreign-struct-type) p)
Source

structures.lisp.

Method: translate-into-foreign-memory (value (type foreign-enum) pointer)
Source

enum.lisp.

Method: translate-into-foreign-memory (value (type foreign-built-in-type) pointer)
Source

types.lisp.

Method: translate-into-foreign-memory (value (type foreign-pointer-type) pointer)
Source

types.lisp.

Method: translate-into-foreign-memory (value (type enhanced-typedef) pointer)
Generic Function: translate-name-from-foreign (foreign-name package &optional varp)
Package

cffi.

Source

functions.lisp.

Methods
Method: translate-name-from-foreign (foreign-name package &optional varp)
Generic Function: translate-name-to-foreign (lisp-name package &optional varp)
Package

cffi.

Source

functions.lisp.

Methods
Method: translate-name-to-foreign (lisp-name package &optional varp)
Generic Function: translate-to-foreign (value type)
Package

cffi.

Source

early-types.lisp.

Methods
Method: translate-to-foreign (value (type foreign-struct-type))
Source

structures.lisp.

Method: translate-to-foreign (obj (type foreign-string-type))
Source

strings.lisp.

Method: translate-to-foreign ((s string) (type foreign-string-type))
Source

strings.lisp.

Method: translate-to-foreign (value (type foreign-bitfield))
Source

enum.lisp.

Method: translate-to-foreign (value (type foreign-enum))
Source

enum.lisp.

Method: translate-to-foreign (value (type foreign-boolean-type))
Source

types.lisp.

Method: translate-to-foreign (value (type foreign-type-wrapper))
Source

types.lisp.

Method: translate-to-foreign (array (type foreign-array-type))
Source

types.lisp.

Method: translate-to-foreign (value (type enhanced-typedef))
Method: translate-to-foreign (value type)
Generic Function: translate-underscore-separated-name (name)
Package

cffi.

Source

functions.lisp.

Methods
Method: translate-underscore-separated-name ((name string))
Method: translate-underscore-separated-name ((name symbol))

6.1.7 Standalone methods

Method: initialize-instance :after ((lib foreign-library) &key canary search-path cconv calling-convention convention)
Source

libraries.lisp.

Method: initialize-instance :after ((type enhanced-foreign-type) &key)
Source

early-types.lisp.

Method: make-load-form ((type foreign-type) &optional env)

Return the form used to dump types to a FASL file.

Source

early-types.lisp.

Method: print-object ((library foreign-library) stream)
Source

libraries.lisp.

Method: print-object ((type foreign-built-in-type) stream)

Print a FOREIGN-TYPE instance to STREAM unreadably.

Source

early-types.lisp.

Method: print-object ((type foreign-array-type) stream)

Print a FOREIGN-ARRAY-TYPE instance to STREAM unreadably.

Source

types.lisp.

Method: print-object ((type named-foreign-type) stream)

Print a FOREIGN-TYPEDEF instance to STREAM unreadably.

Source

early-types.lisp.

Method: print-object ((type foreign-string-type) stream)
Source

strings.lisp.

Method: print-object ((type foreign-pointer-type) stream)
Source

early-types.lisp.


6.1.8 Conditions

Condition: load-foreign-library-error
Package

cffi.

Source

libraries.lisp.

Direct superclasses

simple-error.


Next: , Previous: , Up: Public Interface   [Contents][Index]

6.1.9 Classes

Class: foreign-library
Package

cffi.

Source

libraries.lisp.

Direct methods
Direct slots
Slot: name
Initargs

:name

Readers

foreign-library-name.

Writers

(setf foreign-library-name).

Slot: type
Package

common-lisp.

Initform

:system

Initargs

:type

Slot: spec
Initargs

:spec

Slot: options
Initargs

:options

Slot: load-state
Initargs

:load-state

Readers

foreign-library-load-state.

Writers

(setf foreign-library-load-state).

Slot: handle
Initargs

:handle

Readers

foreign-library-handle.

Writers

(setf foreign-library-handle).

Slot: pathname
Package

common-lisp.


Previous: , Up: Public Interface   [Contents][Index]

6.1.10 Types

Type: foreign-pointer ()
Package

cffi-sys.

Source

cffi-sbcl.lisp.


6.2 Internals


Next: , Previous: , Up: Internals   [Contents][Index]

6.2.1 Special variables

Special Variable: *callbacks*
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Special Variable: *cffi-feature-suffix-map*

Mapping of OS feature keywords to shared library suffixes.

Package

cffi.

Source

libraries.lisp.

Special Variable: *default-type-parsers*

Hash table for :DEFAULT namespace

Package

cffi.

Source

early-types.lisp.

Special Variable: *defcstruct-hook*
Package

cffi.

Source

types.lisp.

Special Variable: *foreign-libraries*

Hashtable of defined libraries.

Package

cffi.

Source

libraries.lisp.

Special Variable: *foreign-string-mappings*
Package

cffi.

Source

strings.lisp.

Special Variable: *foreign-structures-by-value*

A function that produces a form suitable for calling structures by value.

Package

cffi.

Source

functions.lisp.

Special Variable: *possible-float-types*
Package

cffi.

Source

types.lisp.

Special Variable: *runtime-translator-form*
Package

cffi.

Source

early-types.lisp.

Special Variable: *struct-type-parsers*

Hash table for :STRUCT namespace

Package

cffi.

Source

early-types.lisp.

Special Variable: *union-type-parsers*

Hash table for :UNION namespace

Package

cffi.

Source

early-types.lisp.

Special Variable: +valid-enum-base-types+
Package

cffi.

Source

enum.lisp.


6.2.2 Macros

Macro: %%foreign-funcall (name types fargs rettype)

Internal guts of %FOREIGN-FUNCALL.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Macro: %foreign-funcall-pointer-varargs (pointer fixed-args varargs &rest args &key convention)
Package

cffi.

Source

functions.lisp.

Macro: %foreign-funcall-varargs (name fixed-args varargs &rest args &key convention library)
Package

cffi.

Source

functions.lisp.

Macro: %foreign-string-length (ptr offset type length)
Package

cffi.

Source

strings.lisp.

Macro: bget (ptr off &optional bytes endianness)
Package

cffi.

Source

strings.lisp.

Macro: bset (val ptr off &optional bytes endianness)
Package

cffi.

Source

strings.lisp.

Macro: defctype* (name base-type)

Like DEFCTYPE but defers instantiation until parse-time.

Package

cffi.

Source

early-types.lisp.

Macro: defctype-matching (name size-or-type base-types &key match-by)
Package

cffi.

Source

types.lisp.

Macro: define-built-in-foreign-type (keyword)

Defines a built-in foreign-type.

Package

cffi.

Source

early-types.lisp.

Macro: define-mem-accessors (&body pairs)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Macro: define-type-mapping (accessor-table alien-table)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Macro: discard-docstring (body-var)

Discards the first element of the list in body-var if it’s a string.

Package

cffi.

Source

utils.lisp.

Macro: with-tentative-type-definition ((name value namespace) &body body)
Package

cffi.

Source

types.lisp.


Next: , Previous: , Up: Internals   [Contents][Index]

6.2.3 Compiler macros

Compiler Macro: foreign-slot-set (value ptr type slot-name)

Optimizer when TYPE and SLOT-NAME are constant.

Package

cffi.

Source

types.lisp.

Compiler Macro: mem-set (value ptr type &optional offset)

Compiler macro to open-code (SETF MEM-REF) when type is constant.

Package

cffi.

Source

types.lisp.


6.2.4 Ordinary functions

Function: %defcenum-like (name-and-options enum-list type-factory)
Package

cffi.

Source

enum.lisp.

Function: %defcfun (lisp-name foreign-name return-type args options docstring)
Package

cffi.

Source

functions.lisp.

Function: %defcfun-varargs (lisp-name foreign-name return-type args options doc)
Package

cffi.

Source

functions.lisp.

Function: %do-load-foreign-library (library search-path)
Package

cffi.

Source

libraries.lisp.

Function: %foreign-bitfield-symbols (type value)
Package

cffi.

Source

enum.lisp.

Function: %foreign-bitfield-value (type symbols)
Package

cffi.

Source

enum.lisp.

Function: %foreign-enum-keyword (type value &key errorp)
Package

cffi.

Source

enum.lisp.

Function: %foreign-enum-value (type keyword &key errorp)
Package

cffi.

Source

enum.lisp.

Function: %foreign-library-spec (lib)
Package

cffi.

Source

libraries.lisp.

Function: %parse-name-and-options (spec varp)
Package

cffi.

Source

functions.lisp.

Function: adjust-for-alignment (type offset alignment-type firstp)

Return OFFSET aligned properly for TYPE according to ALIGNMENT-TYPE.

Package

cffi.

Source

types.lisp.

Function: array-element-size (array-type)
Package

cffi.

Source

types.lisp.

Function: canonicalize-foreign-type (type)

Convert TYPE to a built-in type by following aliases. Signals an error if the type cannot be resolved.

Package

cffi.

Source

early-types.lisp.

Function: check-for-typedef-cycles (type)
Package

cffi.

Source

early-types.lisp.

Function: check-prefix (l special-words)
Package

cffi.

Source

functions.lisp.

Function: clean-spec-up (spec)
Package

cffi.

Source

libraries.lisp.

Function: collapse-prefix (l special-words)
Package

cffi.

Source

functions.lisp.

Function: convert-foreign-type (type-keyword)
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: darwin-fallback-library-path ()
Package

cffi.

Source

libraries.lisp.

Function: default-library-suffix ()

Return a string to use as default library suffix based on the operating system. This is used to implement the :DEFAULT option. This will need to be extended as we test on more OSes.

Package

cffi.

Source

libraries.lisp.

Function: defcfun-helper-forms (name lisp-name rettype args types options)
Package

cffi.

Source

functions.lisp.

Function: ensure-parsed-base-type (type)
Package

cffi.

Source

early-types.lisp.

Function: explode-path-environment-variable (name)
Package

cffi.

Source

libraries.lisp.

Function: fallback-darwin-framework-directories ()
Package

cffi.

Source

libraries.lisp.

Function: filter-pathname (thing)
Package

cffi.

Source

libraries.lisp.

Function: find-darwin-framework (framework-name)

Searches for FRAMEWORK-NAME in *DARWIN-FRAMEWORK-DIRECTORIES*.

Package

cffi.

Source

libraries.lisp.

Function: find-default-type-parser (symbol)
Package

cffi.

Source

early-types.lisp.

Function: find-file (path directories)

Searches for PATH in a list of DIRECTORIES and returns the first it finds.

Package

cffi.

Source

libraries.lisp.

Function: find-type-parser (symbol &optional namespace)

Return the type parser for SYMBOL. NAMESPACE is either :DEFAULT (for variables, functions, and typedefs) or :STRUCT (for structs, unions, and enums).

Package

cffi.

Source

early-types.lisp.

Function: (setf find-type-parser) (symbol &optional namespace)

Set the type parser for SYMBOL.

Package

cffi.

Source

early-types.lisp.

Function: fl-error (control &rest arguments)
Package

cffi.

Source

libraries.lisp.

Function: fn-call-by-value-p (argument-types return-type)

One or more structures in the arguments or return from the function are called by value.

Package

cffi.

Source

functions.lisp.

Function: follow-typedefs (type)
Package

cffi.

Source

early-types.lisp.

Function: foreign-expand-runtime-translator-or-binding (value var body type)
Package

cffi.

Source

early-types.lisp.

Function: foreign-funcall-form (thing options args pointerp)
Package

cffi.

Source

functions.lisp.

Function: foreign-funcall-type-and-args (args)

Return an SB-ALIEN function type for ARGS.

Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: foreign-funcall-varargs-form (thing options fixed-args varargs pointerp)
Package

cffi.

Source

functions.lisp.

Function: foreign-library-options (lib)
Package

cffi.

Source

libraries.lisp.

Function: foreign-library-search-path (lib)
Package

cffi.

Source

libraries.lisp.

Function: foreign-library-spec (lib)
Package

cffi.

Source

libraries.lisp.

Function: foreign-name (spec varp)
Package

cffi.

Source

functions.lisp.

Function: foreign-options (opts varp)
Package

cffi.

Source

functions.lisp.

Function: foreign-slot-set (value ptr type slot-name)

Set the value of SLOT-NAME in a foreign structure.

Package

cffi.

Source

types.lisp.

Function: foreign-string-length (pointer &key encoding offset)
Package

cffi.

Source

strings.lisp.

Function: foreign-type-error/compound-name (e)
Package

cffi.

Source

early-types.lisp.

Function: fs-pointer-or-lose (foreign-name library)

Like foreign-symbol-ptr but throws an error instead of returning nil when foreign-name is not found.

Package

cffi.

Source

foreign-vars.lisp.

Function: fst-encoding (type)
Package

cffi.

Source

strings.lisp.

Function: generate-struct-accessors (name conc-name slot-names)
Package

cffi.

Source

types.lisp.

Function: get-alignment (type alignment-type firstp)

Return alignment for TYPE according to ALIGNMENT-TYPE.

Package

cffi.

Source

types.lisp.

Function: get-foreign-library (lib)

Look up a library by NAME, signalling an error if not found.

Package

cffi.

Source

libraries.lisp.

Function: (setf get-foreign-library) (name)
Package

cffi.

Source

libraries.lisp.

Function: get-slot-info (type slot-name)

Return the slot info for SLOT-NAME or raise an error.

Package

cffi.

Source

types.lisp.

Function: hash-keys-to-list (ht)
Package

cffi.

Source

enum.lisp.

Function: indexes-to-row-major-index (dimensions &rest subscripts)
Package

cffi.

Source

types.lisp.

Function: inverse-translate-objects (args types declarations rettype call)
Package

cffi.

Source

functions.lisp.

Function: lisp-name (spec varp)
Package

cffi.

Source

functions.lisp.

Function: lisp-name-p (name)
Package

cffi.

Source

functions.lisp.

Function: load-darwin-framework (name framework-name)

Tries to find and load a darwin framework in one of the directories in *DARWIN-FRAMEWORK-DIRECTORIES*. If unable to find FRAMEWORK-NAME, it signals a LOAD-FOREIGN-LIBRARY-ERROR.

Package

cffi.

Source

libraries.lisp.

Function: load-foreign-library-helper (name thing &optional search-path)
Package

cffi.

Source

libraries.lisp.

Function: load-foreign-library-path (name path &optional search-path)

Tries to load PATH using %LOAD-FOREIGN-LIBRARY which should try and find it using the OS’s usual methods. If that fails we try to find it ourselves.

Package

cffi.

Source

libraries.lisp.

Function: make-foreign-bitfield (type-name base-type values)

Makes a new instance of the foreign-bitfield class.

Package

cffi.

Source

enum.lisp.

Function: make-foreign-enum (type-name base-type values &key allow-undeclared-values)

Makes a new instance of the foreign-enum class.

Package

cffi.

Source

enum.lisp.

Function: make-struct-slot (name offset type count)

Make the appropriate type of structure slot.

Package

cffi.

Source

types.lisp.

Function: mem-set (value ptr type &optional offset)

Set the value of TYPE at OFFSET bytes from PTR to VALUE.

Package

cffi.

Source

types.lisp.

Function: mini-eval (form)

Simple EVAL-like function to evaluate the elements of *FOREIGN-LIBRARY-DIRECTORIES* and *DARWIN-FRAMEWORK-DIRECTORIES*.

Package

cffi.

Source

libraries.lisp.

Function: namespace-table (namespace)
Package

cffi.

Source

early-types.lisp.

Function: notice-foreign-struct-definition (name options slots)

Parse and install a foreign structure definition.

Package

cffi.

Source

types.lisp.

Function: notice-foreign-type (name type &optional namespace)
Package

cffi.

Source

early-types.lisp.

Function: notice-foreign-union-definition (name-and-options slots)

Parse and install a foreign union definition.

Package

cffi.

Source

types.lisp.

Function: null-terminator-len (encoding)
Package

cffi.

Source

strings.lisp.

Function: parse-args-and-types (args)

Returns 4 values: types, canonicalized types, args and return type.

Package

cffi.

Source

functions.lisp.

Function: parse-defcallback-options (options)
Package

cffi.

Source

functions.lisp.

Function: parse-defcvar-options (options)
Package

cffi.

Source

foreign-vars.lisp.

Function: parse-deprecated-struct-type (name struct-or-union)
Package

cffi.

Source

types.lisp.

Function: parse-directories (list)
Package

cffi.

Source

libraries.lisp.

Function: parse-foreign-enum-like (type-name base-type values &optional field-mode-p)
Package

cffi.

Source

enum.lisp.

Function: parse-function-options (options &key pointer)
Package

cffi.

Source

functions.lisp.

Function: parse-name-and-options (spec &optional varp)
Package

cffi.

Source

functions.lisp.

Function: parse-type (type)
Package

cffi.

Source

early-types.lisp.

Function: promote-varargs-type (builtin-type)

Default argument promotions.

Package

cffi.

Source

functions.lisp.

Function: read-new-value ()
Package

cffi.

Source

libraries.lisp.

Function: register-foreign-library (name spec &rest options)
Package

cffi.

Source

libraries.lisp.

Function: report-simple-error (name error)
Package

cffi.

Source

libraries.lisp.

Function: row-major-index-to-indexes (index dimensions)
Package

cffi.

Source

types.lisp.

Function: simple-foreign-type-error (type-name namespace format-control &rest format-arguments)
Package

cffi.

Source

early-types.lisp.

Function: single-bit-p (integer)

Answer whether INTEGER, which must be an integer, is a single set twos-complement bit.

Package

cffi.

Source

utils.lisp.

Function: slots-in-order (structure-type)

A list of the structure’s slots in order.

Package

cffi.

Source

early-types.lisp.

Function: split-if (test seq &optional dir)
Package

cffi.

Source

utils.lisp.

Function: structure-by-value-p (ctype)

A structure or union is to be called or returned by value.

Package

cffi.

Source

functions.lisp.

Function: structure-slots (type)

The hash table of slots for the structure type.

Package

cffi.

Source

early-types.lisp.

Function: translate-objects (syms args types rettype call-form &optional indirect)

Helper function for FOREIGN-FUNCALL and DEFCFUN. If ’indirect is T, all arguments are represented by foreign pointers, even those that can be represented by CL objects.

Package

cffi.

Source

functions.lisp.

Function: try-foreign-library-alternatives (name library-list &optional search-path)

Goes through a list of alternatives and only signals an error when none of alternatives were successfully loaded.

Package

cffi.

Source

libraries.lisp.

Function: undefine-foreign-type (symbol &optional namespace)
Package

cffi.

Source

early-types.lisp.

Function: undefined-foreign-type-error (type-name &optional namespace)
Package

cffi.

Source

early-types.lisp.

Function: unload-shared-object-present-p ()
Package

cffi-sys.

Source

cffi-sbcl.lisp.

Function: warn-if-kw-or-belongs-to-cl (name)
Package

cffi.

Source

utils.lisp.

Function: warn-obsolete-argument (old-arg new-arg)
Package

cffi.

Source

utils.lisp.


Next: , Previous: , Up: Internals   [Contents][Index]

6.2.5 Generic functions

Generic Reader: actual-type (object)
Package

cffi.

Methods
Reader Method: actual-type ((foreign-type-alias foreign-type-alias))

automatically generated reader method

Source

early-types.lisp.

Target Slot

actual-type.

Generic Writer: (setf actual-type) (object)
Package

cffi.

Methods
Writer Method: (setf actual-type) ((foreign-type-alias foreign-type-alias))

automatically generated writer method

Source

early-types.lisp.

Target Slot

actual-type.

Generic Function: aggregatep (foreign-type)

Return true if FOREIGN-TYPE is an aggregate type.

Package

cffi.

Source

early-types.lisp.

Methods
Method: aggregatep ((type foreign-array-type))
Source

types.lisp.

Method: aggregatep ((type foreign-type-alias))

Return true if TYPE’s actual type is aggregate.

Method: aggregatep ((type foreign-struct-type))

Returns true, structure types are aggregate.

Method: aggregatep ((type foreign-built-in-type))

Returns false, built-in types are never aggregate types.

Generic Reader: alignment (object)
Package

cffi.

Methods
Reader Method: alignment ((foreign-struct-type foreign-struct-type))

automatically generated reader method

Source

early-types.lisp.

Target Slot

alignment.

Generic Writer: (setf alignment) (object)
Package

cffi.

Methods
Writer Method: (setf alignment) ((foreign-struct-type foreign-struct-type))

automatically generated writer method

Source

early-types.lisp.

Target Slot

alignment.

Generic Reader: allow-undeclared-values (object)
Package

cffi.

Methods
Reader Method: allow-undeclared-values ((foreign-enum foreign-enum))

automatically generated reader method

Source

enum.lisp.

Target Slot

allow-undeclared-values.

Generic Function: bare-struct-type-p (foreign-type)

Return true if FOREIGN-TYPE is a bare struct type or an alias of a bare struct type.

Package

cffi.

Source

early-types.lisp.

Methods
Method: bare-struct-type-p ((type foreign-typedef))
Reader Method: bare-struct-type-p ((foreign-struct-type foreign-struct-type))

automatically generated reader method

Target Slot

bare.

Method: bare-struct-type-p ((type foreign-type))

Return true if FOREIGN-TYPE is a bare struct type or an alias of a bare struct type.

Generic Reader: bit-index->keyword (object)
Package

cffi.

Methods
Reader Method: bit-index->keyword ((foreign-bitfield foreign-bitfield))

automatically generated reader method

Source

enum.lisp.

Target Slot

bit-index->keyword.

Generic Function: canonicalize (foreign-type)

Return the most primitive foreign type for FOREIGN-TYPE, either a built-in type–a keyword–or a struct/union type–a list of the form (:STRUCT/:UNION name). Signals an error if FOREIGN-TYPE is undefined.

Package

cffi.

Source

early-types.lisp.

Methods
Method: canonicalize ((type foreign-type-alias))

Return the built-in type keyword for TYPE.

Method: canonicalize ((type foreign-union-type))
Method: canonicalize ((type foreign-struct-type))
Method: canonicalize ((type foreign-built-in-type))

Return the built-in type keyword for TYPE.

Generic Reader: dimensions (object)
Package

cffi.

Methods
Reader Method: dimensions ((foreign-array-type foreign-array-type))

automatically generated reader method

Source

types.lisp.

Target Slot

dimensions.

Generic Reader: element-type (object)
Package

cffi.

Methods
Reader Method: element-type ((foreign-array-type foreign-array-type))

automatically generated reader method

Source

types.lisp.

Target Slot

element-type.

Generic Reader: encoding (object)
Package

cffi.

Methods
Reader Method: encoding ((foreign-string-type foreign-string-type))

automatically generated reader method

Source

strings.lisp.

Target Slot

encoding.

Generic Function: expand-to-foreign-dyn-indirect (value var body type)
Package

cffi.

Source

early-types.lisp.

Methods
Method: expand-to-foreign-dyn-indirect (value var body (type foreign-string-type))
Source

strings.lisp.

Method: expand-to-foreign-dyn-indirect (value var body (type foreign-enum))
Source

enum.lisp.

Method: expand-to-foreign-dyn-indirect (value var body (type foreign-type-alias))
Method: expand-to-foreign-dyn-indirect (value var body (type translatable-foreign-type))
Method: expand-to-foreign-dyn-indirect (value var body (type foreign-built-in-type))
Method: expand-to-foreign-dyn-indirect (value var body (type foreign-pointer-type))
Method: expand-to-foreign-dyn-indirect :around (value var body (type translatable-foreign-type))
Method: expand-to-foreign-dyn-indirect (value var body type)
Generic Reader: field-keywords (object)
Package

cffi.

Methods
Reader Method: field-keywords ((foreign-bitfield foreign-bitfield))

automatically generated reader method

Source

enum.lisp.

Target Slot

field-keywords.

Generic Reader: fl-name (condition)
Package

cffi.

Methods
Reader Method: fl-name ((condition foreign-library-undefined-error))
Source

libraries.lisp.

Target Slot

name.

Generic Reader: foreign-library-handle (object)
Package

cffi.

Methods
Reader Method: foreign-library-handle ((foreign-library foreign-library))

automatically generated reader method

Source

libraries.lisp.

Target Slot

handle.

Generic Writer: (setf foreign-library-handle) (object)
Package

cffi.

Methods
Writer Method: (setf foreign-library-handle) ((foreign-library foreign-library))

automatically generated writer method

Source

libraries.lisp.

Target Slot

handle.

Generic Function: foreign-struct-slot-pointer (ptr slot)

Get the address of SLOT relative to PTR.

Package

cffi.

Source

types.lisp.

Methods
Method: foreign-struct-slot-pointer (ptr (slot foreign-struct-slot))

Return the address of SLOT relative to PTR.

Generic Function: foreign-struct-slot-pointer-form (ptr slot)

Return a form to get the address of SLOT in PTR.

Package

cffi.

Source

types.lisp.

Methods
Method: foreign-struct-slot-pointer-form (ptr (slot foreign-struct-slot))

Return a form to get the address of SLOT relative to PTR.

Generic Function: foreign-struct-slot-set-form (value ptr slot)

Return a form to set the value of SLOT in struct PTR.

Package

cffi.

Source

types.lisp.

Methods
Method: foreign-struct-slot-set-form (value ptr (slot aggregate-struct-slot))

Return a form to get the value of an aggregate SLOT relative to PTR.

Method: foreign-struct-slot-set-form (value ptr (slot simple-struct-slot))

Return a form to set the value of a simple structure slot.

Generic Function: foreign-struct-slot-value (ptr slot)

Return the value of SLOT in structure PTR.

Package

cffi.

Source

types.lisp.

Methods
Method: foreign-struct-slot-value (ptr (slot aggregate-struct-slot))

Return a pointer to SLOT relative to PTR.

Method: foreign-struct-slot-value (ptr (slot simple-struct-slot))

Return the value of a simple SLOT from a struct at PTR.

Generic Function: (setf foreign-struct-slot-value) (ptr slot)

Set the value of a SLOT in structure PTR.

Package

cffi.

Source

types.lisp.

Methods
Method: (setf foreign-struct-slot-value) (ptr (slot aggregate-struct-slot))

Set the value of an aggregate SLOT to VALUE in PTR.

Method: (setf foreign-struct-slot-value) (ptr (slot simple-struct-slot))

Set the value of a simple SLOT to VALUE in PTR.

Generic Function: foreign-struct-slot-value-form (ptr slot)

Return a form to get the value of SLOT in struct PTR.

Package

cffi.

Source

types.lisp.

Methods
Method: foreign-struct-slot-value-form (ptr (slot aggregate-struct-slot))

Return a form to get the value of SLOT relative to PTR.

Method: foreign-struct-slot-value-form (ptr (slot simple-struct-slot))

Return a form to get the value of a slot from PTR.

Generic Reader: foreign-type-error/namespace (condition)
Generic Writer: (setf foreign-type-error/namespace) (condition)
Package

cffi.

Methods
Reader Method: foreign-type-error/namespace ((condition foreign-type-error))
Writer Method: (setf foreign-type-error/namespace) ((condition foreign-type-error))
Source

early-types.lisp.

Target Slot

namespace.

Generic Reader: foreign-type-error/type-name (condition)
Generic Writer: (setf foreign-type-error/type-name) (condition)
Package

cffi.

Methods
Reader Method: foreign-type-error/type-name ((condition foreign-type-error))
Writer Method: (setf foreign-type-error/type-name) ((condition foreign-type-error))
Source

early-types.lisp.

Target Slot

type-name.

Generic Reader: fst-free-from-foreign-p (object)
Package

cffi.

Methods
Reader Method: fst-free-from-foreign-p ((foreign-string-type foreign-string-type))

automatically generated reader method

Source

strings.lisp.

Target Slot

free-from-foreign.

Generic Reader: fst-free-to-foreign-p (object)
Package

cffi.

Methods
Reader Method: fst-free-to-foreign-p ((foreign-string-type foreign-string-type))

automatically generated reader method

Source

strings.lisp.

Target Slot

free-to-foreign.

Generic Reader: keyword-values (object)
Package

cffi.

Methods
Reader Method: keyword-values ((foreign-enum foreign-enum))

automatically generated reader method

Source

enum.lisp.

Target Slot

keyword-values.

Generic Reader: name (object)
Package

cffi.

Methods
Reader Method: name ((named-foreign-type named-foreign-type))

automatically generated reader method

Source

early-types.lisp.

Target Slot

name.

Generic Writer: (setf name) (object)
Package

cffi.

Methods
Writer Method: (setf name) ((named-foreign-type named-foreign-type))

automatically generated writer method

Source

early-types.lisp.

Target Slot

name.

Generic Reader: new-arg (condition)
Package

cffi.

Methods
Reader Method: new-arg ((condition obsolete-argument-warning))
Source

utils.lisp.

Target Slot

new-arg.

Generic Reader: old-arg (condition)
Package

cffi.

Methods
Reader Method: old-arg ((condition obsolete-argument-warning))
Source

utils.lisp.

Target Slot

old-arg.

Generic Reader: pointer-type (object)
Package

cffi.

Methods
Reader Method: pointer-type ((foreign-pointer-type foreign-pointer-type))

automatically generated reader method

Source

early-types.lisp.

Target Slot

pointer-type.

Generic Writer: (setf pointer-type) (object)
Package

cffi.

Methods
Writer Method: (setf pointer-type) ((foreign-pointer-type foreign-pointer-type))

automatically generated writer method

Source

early-types.lisp.

Target Slot

pointer-type.

Generic Reader: size (object)
Package

cffi.

Methods
Reader Method: size ((foreign-struct-type foreign-struct-type))

automatically generated reader method

Source

early-types.lisp.

Target Slot

size.

Generic Writer: (setf size) (object)
Package

cffi.

Methods
Writer Method: (setf size) ((foreign-struct-type foreign-struct-type))

automatically generated writer method

Source

early-types.lisp.

Target Slot

size.

Generic Reader: slot-count (object)
Package

cffi.

Methods
Reader Method: slot-count ((aggregate-struct-slot aggregate-struct-slot))

automatically generated reader method

Source

types.lisp.

Target Slot

count.

Generic Writer: (setf slot-count) (object)
Package

cffi.

Methods
Writer Method: (setf slot-count) ((aggregate-struct-slot aggregate-struct-slot))

automatically generated writer method

Source

types.lisp.

Target Slot

count.

Generic Reader: slot-name (object)
Package

cffi.

Methods
Reader Method: slot-name ((foreign-struct-slot foreign-struct-slot))

automatically generated reader method

Source

types.lisp.

Target Slot

name.

Generic Reader: slot-offset (object)
Package

cffi.

Methods
Reader Method: slot-offset ((foreign-struct-slot foreign-struct-slot))

automatically generated reader method

Source

types.lisp.

Target Slot

offset.

Generic Writer: (setf slot-offset) (object)
Package

cffi.

Methods
Writer Method: (setf slot-offset) ((foreign-struct-slot foreign-struct-slot))

automatically generated writer method

Source

types.lisp.

Target Slot

offset.

Generic Reader: slot-type (object)
Package

cffi.

Methods
Reader Method: slot-type ((foreign-struct-slot foreign-struct-slot))

automatically generated reader method

Source

types.lisp.

Target Slot

type.

Generic Writer: (setf slot-type) (object)
Package

cffi.

Methods
Writer Method: (setf slot-type) ((foreign-struct-slot foreign-struct-slot))

automatically generated writer method

Source

types.lisp.

Target Slot

type.

Generic Reader: slots (object)
Package

cffi.

Methods
Reader Method: slots ((foreign-struct-type foreign-struct-type))

automatically generated reader method

Source

early-types.lisp.

Target Slot

slots.

Generic Writer: (setf slots) (object)
Package

cffi.

Methods
Writer Method: (setf slots) ((foreign-struct-type foreign-struct-type))

automatically generated writer method

Source

early-types.lisp.

Target Slot

slots.

Generic Function: translate-aggregate-to-foreign (ptr value type)
Package

cffi.

Source

early-types.lisp.

Methods
Method: translate-aggregate-to-foreign (ptr value (type foreign-struct-type))
Source

types.lisp.

Method: translate-aggregate-to-foreign (ptr value (type foreign-array-type))
Source

types.lisp.

Generic Reader: type-keyword (object)
Package

cffi.

Methods
Reader Method: type-keyword ((foreign-built-in-type foreign-built-in-type))

automatically generated reader method

Source

early-types.lisp.

Target Slot

type-keyword.

Generic Writer: (setf type-keyword) (object)
Package

cffi.

Methods
Writer Method: (setf type-keyword) ((foreign-built-in-type foreign-built-in-type))

automatically generated writer method

Source

early-types.lisp.

Target Slot

type-keyword.

Generic Function: unparse-type (foreign-type)

Unparse FOREIGN-TYPE to a type specification (symbol or list).

Package

cffi.

Source

early-types.lisp.

Methods
Method: unparse-type ((type enhanced-foreign-type))
Method: unparse-type ((type foreign-struct-type))
Method: unparse-type ((type foreign-pointer-type))
Method: unparse-type ((type foreign-built-in-type))

Returns the symbolic representation of a built-in type.

Method: unparse-type ((type named-foreign-type))
Generic Reader: unparsed-type (object)
Package

cffi.

Methods
Reader Method: unparsed-type ((enhanced-foreign-type enhanced-foreign-type))

automatically generated reader method

Source

early-types.lisp.

Target Slot

unparsed-type.

Generic Writer: (setf unparsed-type) (object)
Package

cffi.

Methods
Writer Method: (setf unparsed-type) ((enhanced-foreign-type enhanced-foreign-type))

automatically generated writer method

Source

early-types.lisp.

Target Slot

unparsed-type.

Generic Reader: value-keywords (object)
Package

cffi.

Methods
Reader Method: value-keywords ((foreign-enum foreign-enum))

automatically generated reader method

Source

enum.lisp.

Target Slot

value-keywords.

Generic Reader: wrapper-from-c (object)
Package

cffi.

Methods
Reader Method: wrapper-from-c ((foreign-type-wrapper foreign-type-wrapper))

automatically generated reader method

Source

types.lisp.

Target Slot

from-c.

Generic Reader: wrapper-to-c (object)
Package

cffi.

Methods
Reader Method: wrapper-to-c ((foreign-type-wrapper foreign-type-wrapper))

automatically generated reader method

Source

types.lisp.

Target Slot

to-c.


Next: , Previous: , Up: Internals   [Contents][Index]

6.2.6 Conditions

Condition: cffi-error
Package

cffi.

Source

early-types.lisp.

Direct superclasses

error.

Direct subclasses

foreign-type-error.

Condition: foreign-library-undefined-error
Package

cffi.

Source

libraries.lisp.

Direct superclasses

error.

Direct methods

fl-name.

Direct slots
Slot: name
Initargs

:name

Readers

fl-name.

Writers

This slot is read-only.

Condition: foreign-type-error
Package

cffi.

Source

early-types.lisp.

Direct superclasses

cffi-error.

Direct subclasses
Direct methods
Direct slots
Slot: type-name
Initform

(quote (error "must specify type-name."))

Initargs

:type-name

Readers

foreign-type-error/type-name.

Writers

(setf foreign-type-error/type-name).

Slot: namespace
Initform

(quote :default)

Initargs

:namespace

Readers

foreign-type-error/namespace.

Writers

(setf foreign-type-error/namespace).

Condition: obsolete-argument-warning
Package

cffi.

Source

utils.lisp.

Direct superclasses

style-warning.

Direct methods
Direct slots
Slot: old-arg
Initargs

:old-arg

Readers

old-arg.

Writers

This slot is read-only.

Slot: new-arg
Initargs

:new-arg

Readers

new-arg.

Writers

This slot is read-only.

Condition: simple-foreign-type-error
Package

cffi.

Source

early-types.lisp.

Direct superclasses
Condition: undefined-foreign-type-error
Package

cffi.

Source

early-types.lisp.

Direct superclasses

foreign-type-error.


Next: , Previous: , Up: Internals   [Contents][Index]

6.2.7 Classes

Class: aggregate-struct-slot

Aggregate structure slots.

Package

cffi.

Source

types.lisp.

Direct superclasses

foreign-struct-slot.

Direct methods
Direct slots
Slot: count
Package

common-lisp.

Initargs

:count

Readers

slot-count.

Writers

(setf slot-count).

Class: enhanced-foreign-type
Package

cffi.

Source

early-types.lisp.

Direct superclasses
Direct subclasses
Direct methods
Direct slots
Slot: unparsed-type
Readers

unparsed-type.

Writers

(setf unparsed-type).

Class: enhanced-typedef
Package

cffi.

Source

early-types.lisp.

Direct superclasses

foreign-typedef.

Direct methods
Class: foreign-array-type
Package

cffi.

Source

types.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (pointer))
Direct slots
Slot: dimensions
Initargs

:dimensions

Readers

dimensions.

Writers

This slot is read-only.

Slot: element-type
Initargs

:element-type

Readers

element-type.

Writers

This slot is read-only.

Class: foreign-bitfield

Describes a foreign bitfield type.

Package

cffi.

Source

enum.lisp.

Direct superclasses

foreign-enum.

Direct methods
Direct slots
Slot: field-keywords
Initform

(error "must specify field-keywords.")

Initargs

:field-keywords

Readers

field-keywords.

Writers

This slot is read-only.

Slot: bit-index->keyword
Initform

(error "must specify bit-index->keyword")

Initargs

:bit-index->keyword

Readers

bit-index->keyword.

Writers

This slot is read-only.

Class: foreign-boolean-type
Package

cffi.

Source

types.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Class: foreign-built-in-type

A built-in foreign type.

Package

cffi.

Source

early-types.lisp.

Direct superclasses

foreign-type.

Direct subclasses

foreign-pointer-type.

Direct methods
Direct slots
Slot: type-keyword
Initform

(error "a type keyword is required.")

Initargs

:type-keyword

Readers

type-keyword.

Writers

(setf type-keyword).

Class: foreign-enum

Describes a foreign enumerated type.

Package

cffi.

Source

enum.lisp.

Direct superclasses
Direct subclasses

foreign-bitfield.

Direct methods
Direct slots
Slot: keyword-values
Initform

(error "must specify keyword-values.")

Initargs

:keyword-values

Readers

keyword-values.

Writers

This slot is read-only.

Slot: value-keywords
Initform

(error "must specify value-keywords.")

Initargs

:value-keywords

Readers

value-keywords.

Writers

This slot is read-only.

Slot: allow-undeclared-values
Initargs

:allow-undeclared-values

Readers

allow-undeclared-values.

Writers

This slot is read-only.

Class: foreign-pointer-type
Package

cffi.

Source

early-types.lisp.

Direct superclasses

foreign-built-in-type.

Direct methods
Direct Default Initargs
InitargValue
:type-keywordpointer
Direct slots
Slot: pointer-type
Initargs

:pointer-type

Readers

pointer-type.

Writers

(setf pointer-type).

Class: foreign-string+ptr-type
Package

cffi.

Source

strings.lisp.

Direct superclasses

foreign-string-type.

Direct methods

translate-from-foreign.

Class: foreign-string-type
Package

cffi.

Source

strings.lisp.

Direct superclasses

enhanced-foreign-type.

Direct subclasses

foreign-string+ptr-type.

Direct methods
Direct Default Initargs
InitargValue
:actual-type(quote (pointer))
Direct slots
Slot: encoding
Initargs

:encoding

Readers

encoding.

Writers

This slot is read-only.

Slot: free-from-foreign
Type

boolean

Initargs

:free-from-foreign

Readers

fst-free-from-foreign-p.

Writers

This slot is read-only.

Slot: free-to-foreign
Type

boolean

Initform

t

Initargs

:free-to-foreign

Readers

fst-free-to-foreign-p.

Writers

This slot is read-only.

Class: foreign-struct-slot

Base class for simple and aggregate slots.

Package

cffi.

Source

types.lisp.

Direct subclasses
Direct methods
Direct slots
Slot: name
Initargs

:name

Readers

slot-name.

Writers

This slot is read-only.

Slot: offset
Initargs

:offset

Readers

slot-offset.

Writers

(setf slot-offset).

Slot: type
Package

common-lisp.

Initargs

:type

Readers

slot-type.

Writers

(setf slot-type).

Class: foreign-struct-type
Package

cffi.

Source

early-types.lisp.

Direct superclasses

named-foreign-type.

Direct subclasses

foreign-union-type.

Direct methods
Direct slots
Slot: slots
Initform

(make-hash-table)

Initargs

:slots

Readers

slots.

Writers

(setf slots).

Slot: size
Initargs

:size

Readers

size.

Writers

(setf size).

Slot: alignment
Initargs

:alignment

Readers

alignment.

Writers

(setf alignment).

Slot: bare
Initargs

:bare

Readers

bare-struct-type-p.

Writers

This slot is read-only.

Class: foreign-type

Base class for all foreign types.

Package

cffi.

Source

early-types.lisp.

Direct subclasses
Direct methods
Class: foreign-type-alias

A type that aliases another type.

Package

cffi.

Source

early-types.lisp.

Direct superclasses

foreign-type.

Direct subclasses
Direct methods
Direct slots
Slot: actual-type
Initform

(error "must specify an actual-type.")

Initargs

:actual-type

Readers

actual-type.

Writers

(setf actual-type).

Class: foreign-type-wrapper

Wrapper type.

Package

cffi.

Source

types.lisp.

Direct superclasses

enhanced-foreign-type.

Direct methods
Direct slots
Slot: to-c
Initargs

:to-c

Readers

wrapper-to-c.

Writers

This slot is read-only.

Slot: from-c
Initargs

:from-c

Readers

wrapper-from-c.

Writers

This slot is read-only.

Class: foreign-typedef
Package

cffi.

Source

early-types.lisp.

Direct superclasses
Direct subclasses

enhanced-typedef.

Direct methods

bare-struct-type-p.

Class: foreign-union-type
Package

cffi.

Source

early-types.lisp.

Direct superclasses

foreign-struct-type.

Direct methods

canonicalize.

Class: named-foreign-type
Package

cffi.

Source

early-types.lisp.

Direct superclasses

foreign-type.

Direct subclasses
Direct methods
Direct slots
Slot: name
Initform

(error "must specify a name.")

Initargs

:name

Readers

name.

Writers

(setf name).

Class: simple-struct-slot

Non-aggregate structure slots.

Package

cffi.

Source

types.lisp.

Direct superclasses

foreign-struct-slot.

Direct methods
Class: translatable-foreign-type
Package

cffi.

Source

early-types.lisp.

Direct superclasses

foreign-type.

Direct subclasses

enhanced-foreign-type.

Direct methods

Previous: , Up: Internals   [Contents][Index]

6.2.8 Types

Type: c-namespace-name ()
Package

cffi.

Source

early-types.lisp.

Type: enum-key ()
Package

cffi.

Source

enum.lisp.


Appendix A Indexes


Next: , Previous: , Up: Indexes   [Contents][Index]

A.1 Concepts


Next: , Previous: , Up: Indexes   [Contents][Index]

A.2 Functions

Jump to:   %   (  
A   B   C   D   E   F   G   H   I   K   L   M   N   O   P   R   S   T   U   V   W  
Index Entry  Section

%
%%foreign-funcall: Private macros
%callback: Public ordinary functions
%close-foreign-library: Public ordinary functions
%defcallback: Public macros
%defcenum-like: Private ordinary functions
%defcfun: Private ordinary functions
%defcfun-varargs: Private ordinary functions
%do-load-foreign-library: Private ordinary functions
%foreign-alloc: Public ordinary functions
%foreign-bitfield-symbols: Private ordinary functions
%foreign-bitfield-value: Private ordinary functions
%foreign-enum-keyword: Private ordinary functions
%foreign-enum-value: Private ordinary functions
%foreign-funcall: Public macros
%foreign-funcall-pointer: Public macros
%foreign-funcall-pointer-varargs: Private macros
%foreign-funcall-varargs: Private macros
%foreign-library-spec: Private ordinary functions
%foreign-string-length: Private macros
%foreign-symbol-pointer: Public ordinary functions
%foreign-type-alignment: Public ordinary functions
%foreign-type-size: Public ordinary functions
%load-foreign-library: Public ordinary functions
%mem-ref: Public compiler macros
%mem-ref: Public ordinary functions
%mem-set: Public compiler macros
%mem-set: Public ordinary functions
%parse-name-and-options: Private ordinary functions

(
(setf actual-type): Private generic functions
(setf actual-type): Private generic functions
(setf alignment): Private generic functions
(setf alignment): Private generic functions
(setf find-type-parser): Private ordinary functions
(setf foreign-aref): Public ordinary functions
(setf foreign-library-handle): Private generic functions
(setf foreign-library-handle): Private generic functions
(setf foreign-library-load-state): Public generic functions
(setf foreign-library-load-state): Public generic functions
(setf foreign-library-name): Public generic functions
(setf foreign-library-name): Public generic functions
(setf foreign-slot-value): Public setf expanders
(setf foreign-struct-slot-value): Private generic functions
(setf foreign-struct-slot-value): Private generic functions
(setf foreign-struct-slot-value): Private generic functions
(setf foreign-type-error/namespace): Private generic functions
(setf foreign-type-error/namespace): Private generic functions
(setf foreign-type-error/type-name): Private generic functions
(setf foreign-type-error/type-name): Private generic functions
(setf get-foreign-library): Private ordinary functions
(setf mem-aref): Public setf expanders
(setf mem-ref): Public setf expanders
(setf name): Private generic functions
(setf name): Private generic functions
(setf pointer-type): Private generic functions
(setf pointer-type): Private generic functions
(setf size): Private generic functions
(setf size): Private generic functions
(setf slot-count): Private generic functions
(setf slot-count): Private generic functions
(setf slot-offset): Private generic functions
(setf slot-offset): Private generic functions
(setf slot-type): Private generic functions
(setf slot-type): Private generic functions
(setf slots): Private generic functions
(setf slots): Private generic functions
(setf type-keyword): Private generic functions
(setf type-keyword): Private generic functions
(setf unparsed-type): Private generic functions
(setf unparsed-type): Private generic functions

A
actual-type: Private generic functions
actual-type: Private generic functions
adjust-for-alignment: Private ordinary functions
aggregatep: Private generic functions
aggregatep: Private generic functions
aggregatep: Private generic functions
aggregatep: Private generic functions
aggregatep: Private generic functions
alignment: Private generic functions
alignment: Private generic functions
allow-undeclared-values: Private generic functions
allow-undeclared-values: Private generic functions
array-element-size: Private ordinary functions

B
bare-struct-type-p: Private generic functions
bare-struct-type-p: Private generic functions
bare-struct-type-p: Private generic functions
bare-struct-type-p: Private generic functions
bget: Private macros
bit-index->keyword: Private generic functions
bit-index->keyword: Private generic functions
bset: Private macros

C
callback: Public macros
canonicalize: Private generic functions
canonicalize: Private generic functions
canonicalize: Private generic functions
canonicalize: Private generic functions
canonicalize: Private generic functions
canonicalize-foreign-type: Private ordinary functions
canonicalize-symbol-name-case: Public ordinary functions
cffi-feature-p: Public ordinary functions
check-for-typedef-cycles: Private ordinary functions
check-prefix: Private ordinary functions
clean-spec-up: Private ordinary functions
close-foreign-library: Public ordinary functions
collapse-prefix: Private ordinary functions
Compiler Macro, %mem-ref: Public compiler macros
Compiler Macro, %mem-set: Public compiler macros
Compiler Macro, convert-from-foreign: Public compiler macros
Compiler Macro, convert-into-foreign-memory: Public compiler macros
Compiler Macro, convert-to-foreign: Public compiler macros
Compiler Macro, foreign-alloc: Public compiler macros
Compiler Macro, foreign-bitfield-symbols: Public compiler macros
Compiler Macro, foreign-bitfield-value: Public compiler macros
Compiler Macro, foreign-slot-pointer: Public compiler macros
Compiler Macro, foreign-slot-set: Private compiler macros
Compiler Macro, foreign-slot-value: Public compiler macros
Compiler Macro, inc-pointer: Public compiler macros
Compiler Macro, mem-aptr: Public compiler macros
Compiler Macro, mem-aref: Public compiler macros
Compiler Macro, mem-ref: Public compiler macros
Compiler Macro, mem-set: Private compiler macros
convert-foreign-type: Private ordinary functions
convert-from-foreign: Public compiler macros
convert-from-foreign: Public ordinary functions
convert-into-foreign-memory: Public compiler macros
convert-into-foreign-memory: Public ordinary functions
convert-to-foreign: Public compiler macros
convert-to-foreign: Public ordinary functions

D
darwin-fallback-library-path: Private ordinary functions
default-library-suffix: Private ordinary functions
defbitfield: Public macros
defcallback: Public macros
defcenum: Public macros
defcfun: Public macros
defcfun-helper-forms: Private ordinary functions
defcstruct: Public macros
defctype: Public macros
defctype*: Private macros
defctype-matching: Private macros
defcunion: Public macros
defcvar: Public macros
define-built-in-foreign-type: Private macros
define-c-struct-wrapper: Public macros
define-foreign-library: Public macros
define-foreign-type: Public macros
define-mem-accessors: Private macros
define-parse-method: Public macros
define-translation-method: Public macros
define-type-mapping: Private macros
dimensions: Private generic functions
dimensions: Private generic functions
discard-docstring: Private macros

E
element-type: Private generic functions
element-type: Private generic functions
encoding: Private generic functions
encoding: Private generic functions
ensure-parsed-base-type: Private ordinary functions
expand-from-foreign: Public generic functions
expand-from-foreign: Public generic functions
expand-from-foreign: Public generic functions
expand-from-foreign: Public generic functions
expand-from-foreign: Public generic functions
expand-from-foreign: Public generic functions
expand-from-foreign: Public generic functions
expand-into-foreign-memory: Public generic functions
expand-into-foreign-memory: Public generic functions
expand-into-foreign-memory: Public generic functions
expand-into-foreign-memory: Public generic functions
expand-into-foreign-memory: Public generic functions
expand-to-foreign: Public generic functions
expand-to-foreign: Public generic functions
expand-to-foreign: Public generic functions
expand-to-foreign: Public generic functions
expand-to-foreign: Public generic functions
expand-to-foreign: Public generic functions
expand-to-foreign: Public generic functions
expand-to-foreign: Public generic functions
expand-to-foreign-dyn: Public generic functions
expand-to-foreign-dyn: Public generic functions
expand-to-foreign-dyn: Public generic functions
expand-to-foreign-dyn: Public generic functions
expand-to-foreign-dyn: Public generic functions
expand-to-foreign-dyn-indirect: Private generic functions
expand-to-foreign-dyn-indirect: Private generic functions
expand-to-foreign-dyn-indirect: Private generic functions
expand-to-foreign-dyn-indirect: Private generic functions
expand-to-foreign-dyn-indirect: Private generic functions
expand-to-foreign-dyn-indirect: Private generic functions
expand-to-foreign-dyn-indirect: Private generic functions
expand-to-foreign-dyn-indirect: Private generic functions
expand-to-foreign-dyn-indirect: Private generic functions
explode-path-environment-variable: Private ordinary functions

F
fallback-darwin-framework-directories: Private ordinary functions
field-keywords: Private generic functions
field-keywords: Private generic functions
filter-pathname: Private ordinary functions
find-darwin-framework: Private ordinary functions
find-default-type-parser: Private ordinary functions
find-file: Private ordinary functions
find-type-parser: Private ordinary functions
fl-error: Private ordinary functions
fl-name: Private generic functions
fl-name: Private generic functions
fn-call-by-value-p: Private ordinary functions
follow-typedefs: Private ordinary functions
foreign-alloc: Public compiler macros
foreign-alloc: Public ordinary functions
foreign-aref: Public ordinary functions
foreign-array-alloc: Public ordinary functions
foreign-array-free: Public ordinary functions
foreign-array-to-lisp: Public ordinary functions
foreign-bitfield-symbol-list: Public ordinary functions
foreign-bitfield-symbols: Public compiler macros
foreign-bitfield-symbols: Public ordinary functions
foreign-bitfield-value: Public compiler macros
foreign-bitfield-value: Public ordinary functions
foreign-enum-keyword: Public ordinary functions
foreign-enum-keyword-list: Public ordinary functions
foreign-enum-value: Public ordinary functions
foreign-expand-runtime-translator-or-binding: Private ordinary functions
foreign-free: Public ordinary functions
foreign-funcall: Public macros
foreign-funcall-form: Private ordinary functions
foreign-funcall-pointer: Public macros
foreign-funcall-pointer-varargs: Public macros
foreign-funcall-type-and-args: Private ordinary functions
foreign-funcall-varargs: Public macros
foreign-funcall-varargs-form: Private ordinary functions
foreign-library-handle: Private generic functions
foreign-library-handle: Private generic functions
foreign-library-load-state: Public generic functions
foreign-library-load-state: Public generic functions
foreign-library-loaded-p: Public ordinary functions
foreign-library-name: Public generic functions
foreign-library-name: Public generic functions
foreign-library-options: Private ordinary functions
foreign-library-pathname: Public ordinary functions
foreign-library-search-path: Private ordinary functions
foreign-library-spec: Private ordinary functions
foreign-library-type: Public ordinary functions
foreign-name: Private ordinary functions
foreign-options: Private ordinary functions
foreign-slot-count: Public ordinary functions
foreign-slot-names: Public ordinary functions
foreign-slot-offset: Public ordinary functions
foreign-slot-pointer: Public compiler macros
foreign-slot-pointer: Public ordinary functions
foreign-slot-set: Private compiler macros
foreign-slot-set: Private ordinary functions
foreign-slot-type: Public ordinary functions
foreign-slot-value: Public compiler macros
foreign-slot-value: Public ordinary functions
foreign-string-alloc: Public ordinary functions
foreign-string-free: Public ordinary functions
foreign-string-length: Private ordinary functions
foreign-string-to-lisp: Public ordinary functions
foreign-struct-slot-pointer: Private generic functions
foreign-struct-slot-pointer: Private generic functions
foreign-struct-slot-pointer-form: Private generic functions
foreign-struct-slot-pointer-form: Private generic functions
foreign-struct-slot-set-form: Private generic functions
foreign-struct-slot-set-form: Private generic functions
foreign-struct-slot-set-form: Private generic functions
foreign-struct-slot-value: Private generic functions
foreign-struct-slot-value: Private generic functions
foreign-struct-slot-value: Private generic functions
foreign-struct-slot-value-form: Private generic functions
foreign-struct-slot-value-form: Private generic functions
foreign-struct-slot-value-form: Private generic functions
foreign-symbol-pointer: Public ordinary functions
foreign-type-alignment: Public generic functions
foreign-type-alignment: Public generic functions
foreign-type-alignment: Public generic functions
foreign-type-alignment: Public generic functions
foreign-type-alignment: Public generic functions
foreign-type-alignment: Public generic functions
foreign-type-error/compound-name: Private ordinary functions
foreign-type-error/namespace: Private generic functions
foreign-type-error/namespace: Private generic functions
foreign-type-error/type-name: Private generic functions
foreign-type-error/type-name: Private generic functions
foreign-type-size: Public generic functions
foreign-type-size: Public generic functions
foreign-type-size: Public generic functions
foreign-type-size: Public generic functions
foreign-type-size: Public generic functions
foreign-type-size: Public generic functions
free-converted-object: Public ordinary functions
free-translated-object: Public generic functions
free-translated-object: Public generic functions
free-translated-object: Public generic functions
free-translated-object: Public generic functions
free-translated-object: Public generic functions
free-translated-object: Public generic functions
fs-pointer-or-lose: Private ordinary functions
fst-encoding: Private ordinary functions
fst-free-from-foreign-p: Private generic functions
fst-free-from-foreign-p: Private generic functions
fst-free-to-foreign-p: Private generic functions
fst-free-to-foreign-p: Private generic functions
Function, %callback: Public ordinary functions
Function, %close-foreign-library: Public ordinary functions
Function, %defcenum-like: Private ordinary functions
Function, %defcfun: Private ordinary functions
Function, %defcfun-varargs: Private ordinary functions
Function, %do-load-foreign-library: Private ordinary functions
Function, %foreign-alloc: Public ordinary functions
Function, %foreign-bitfield-symbols: Private ordinary functions
Function, %foreign-bitfield-value: Private ordinary functions
Function, %foreign-enum-keyword: Private ordinary functions
Function, %foreign-enum-value: Private ordinary functions
Function, %foreign-library-spec: Private ordinary functions
Function, %foreign-symbol-pointer: Public ordinary functions
Function, %foreign-type-alignment: Public ordinary functions
Function, %foreign-type-size: Public ordinary functions
Function, %load-foreign-library: Public ordinary functions
Function, %mem-ref: Public ordinary functions
Function, %mem-set: Public ordinary functions
Function, %parse-name-and-options: Private ordinary functions
Function, (setf find-type-parser): Private ordinary functions
Function, (setf foreign-aref): Public ordinary functions
Function, (setf get-foreign-library): Private ordinary functions
Function, adjust-for-alignment: Private ordinary functions
Function, array-element-size: Private ordinary functions
Function, canonicalize-foreign-type: Private ordinary functions
Function, canonicalize-symbol-name-case: Public ordinary functions
Function, cffi-feature-p: Public ordinary functions
Function, check-for-typedef-cycles: Private ordinary functions
Function, check-prefix: Private ordinary functions
Function, clean-spec-up: Private ordinary functions
Function, close-foreign-library: Public ordinary functions
Function, collapse-prefix: Private ordinary functions
Function, convert-foreign-type: Private ordinary functions
Function, convert-from-foreign: Public ordinary functions
Function, convert-into-foreign-memory: Public ordinary functions
Function, convert-to-foreign: Public ordinary functions
Function, darwin-fallback-library-path: Private ordinary functions
Function, default-library-suffix: Private ordinary functions
Function, defcfun-helper-forms: Private ordinary functions
Function, ensure-parsed-base-type: Private ordinary functions
Function, explode-path-environment-variable: Private ordinary functions
Function, fallback-darwin-framework-directories: Private ordinary functions
Function, filter-pathname: Private ordinary functions
Function, find-darwin-framework: Private ordinary functions
Function, find-default-type-parser: Private ordinary functions
Function, find-file: Private ordinary functions
Function, find-type-parser: Private ordinary functions
Function, fl-error: Private ordinary functions
Function, fn-call-by-value-p: Private ordinary functions
Function, follow-typedefs: Private ordinary functions
Function, foreign-alloc: Public ordinary functions
Function, foreign-aref: Public ordinary functions
Function, foreign-array-alloc: Public ordinary functions
Function, foreign-array-free: Public ordinary functions
Function, foreign-array-to-lisp: Public ordinary functions
Function, foreign-bitfield-symbol-list: Public ordinary functions
Function, foreign-bitfield-symbols: Public ordinary functions
Function, foreign-bitfield-value: Public ordinary functions
Function, foreign-enum-keyword: Public ordinary functions
Function, foreign-enum-keyword-list: Public ordinary functions
Function, foreign-enum-value: Public ordinary functions
Function, foreign-expand-runtime-translator-or-binding: Private ordinary functions
Function, foreign-free: Public ordinary functions
Function, foreign-funcall-form: Private ordinary functions
Function, foreign-funcall-type-and-args: Private ordinary functions
Function, foreign-funcall-varargs-form: Private ordinary functions
Function, foreign-library-loaded-p: Public ordinary functions
Function, foreign-library-options: Private ordinary functions
Function, foreign-library-pathname: Public ordinary functions
Function, foreign-library-search-path: Private ordinary functions
Function, foreign-library-spec: Private ordinary functions
Function, foreign-library-type: Public ordinary functions
Function, foreign-name: Private ordinary functions
Function, foreign-options: Private ordinary functions
Function, foreign-slot-count: Public ordinary functions
Function, foreign-slot-names: Public ordinary functions
Function, foreign-slot-offset: Public ordinary functions
Function, foreign-slot-pointer: Public ordinary functions
Function, foreign-slot-set: Private ordinary functions
Function, foreign-slot-type: Public ordinary functions
Function, foreign-slot-value: Public ordinary functions
Function, foreign-string-alloc: Public ordinary functions
Function, foreign-string-free: Public ordinary functions
Function, foreign-string-length: Private ordinary functions
Function, foreign-string-to-lisp: Public ordinary functions
Function, foreign-symbol-pointer: Public ordinary functions
Function, foreign-type-error/compound-name: Private ordinary functions
Function, free-converted-object: Public ordinary functions
Function, fs-pointer-or-lose: Private ordinary functions
Function, fst-encoding: Private ordinary functions
Function, generate-struct-accessors: Private ordinary functions
Function, get-alignment: Private ordinary functions
Function, get-callback: Public ordinary functions
Function, get-foreign-library: Private ordinary functions
Function, get-slot-info: Private ordinary functions
Function, get-var-pointer: Public ordinary functions
Function, hash-keys-to-list: Private ordinary functions
Function, inc-pointer: Public ordinary functions
Function, indexes-to-row-major-index: Private ordinary functions
Function, inverse-translate-objects: Private ordinary functions
Function, lisp-array-to-foreign: Public ordinary functions
Function, lisp-name: Private ordinary functions
Function, lisp-name-p: Private ordinary functions
Function, lisp-string-to-foreign: Public ordinary functions
Function, list-foreign-libraries: Public ordinary functions
Function, load-darwin-framework: Private ordinary functions
Function, load-foreign-library: Public ordinary functions
Function, load-foreign-library-helper: Private ordinary functions
Function, load-foreign-library-path: Private ordinary functions
Function, make-foreign-bitfield: Private ordinary functions
Function, make-foreign-enum: Private ordinary functions
Function, make-pointer: Public ordinary functions
Function, make-shareable-byte-vector: Public ordinary functions
Function, make-struct-slot: Private ordinary functions
Function, mem-aptr: Public ordinary functions
Function, mem-aref: Public ordinary functions
Function, mem-ref: Public ordinary functions
Function, mem-set: Private ordinary functions
Function, mini-eval: Private ordinary functions
Function, namespace-table: Private ordinary functions
Function, native-namestring: Public ordinary functions
Function, notice-foreign-struct-definition: Private ordinary functions
Function, notice-foreign-type: Private ordinary functions
Function, notice-foreign-union-definition: Private ordinary functions
Function, null-pointer: Public ordinary functions
Function, null-pointer-p: Public ordinary functions
Function, null-terminator-len: Private ordinary functions
Function, parse-args-and-types: Private ordinary functions
Function, parse-defcallback-options: Private ordinary functions
Function, parse-defcvar-options: Private ordinary functions
Function, parse-deprecated-struct-type: Private ordinary functions
Function, parse-directories: Private ordinary functions
Function, parse-foreign-enum-like: Private ordinary functions
Function, parse-function-options: Private ordinary functions
Function, parse-name-and-options: Private ordinary functions
Function, parse-type: Private ordinary functions
Function, pointer-address: Public ordinary functions
Function, pointer-eq: Public ordinary functions
Function, pointerp: Public ordinary functions
Function, promote-varargs-type: Private ordinary functions
Function, read-new-value: Private ordinary functions
Function, register-foreign-library: Private ordinary functions
Function, reload-foreign-libraries: Public ordinary functions
Function, report-simple-error: Private ordinary functions
Function, row-major-index-to-indexes: Private ordinary functions
Function, simple-foreign-type-error: Private ordinary functions
Function, single-bit-p: Private ordinary functions
Function, slots-in-order: Private ordinary functions
Function, split-if: Private ordinary functions
Function, structure-by-value-p: Private ordinary functions
Function, structure-slots: Private ordinary functions
Function, translate-objects: Private ordinary functions
Function, try-foreign-library-alternatives: Private ordinary functions
Function, undefine-foreign-type: Private ordinary functions
Function, undefined-foreign-type-error: Private ordinary functions
Function, unload-shared-object-present-p: Private ordinary functions
Function, warn-if-kw-or-belongs-to-cl: Private ordinary functions
Function, warn-obsolete-argument: Private ordinary functions

G
generate-struct-accessors: Private ordinary functions
Generic Function, (setf actual-type): Private generic functions
Generic Function, (setf alignment): Private generic functions
Generic Function, (setf foreign-library-handle): Private generic functions
Generic Function, (setf foreign-library-load-state): Public generic functions
Generic Function, (setf foreign-library-name): Public generic functions
Generic Function, (setf foreign-struct-slot-value): Private generic functions
Generic Function, (setf foreign-type-error/namespace): Private generic functions
Generic Function, (setf foreign-type-error/type-name): Private generic functions
Generic Function, (setf name): Private generic functions
Generic Function, (setf pointer-type): Private generic functions
Generic Function, (setf size): Private generic functions
Generic Function, (setf slot-count): Private generic functions
Generic Function, (setf slot-offset): Private generic functions
Generic Function, (setf slot-type): Private generic functions
Generic Function, (setf slots): Private generic functions
Generic Function, (setf type-keyword): Private generic functions
Generic Function, (setf unparsed-type): Private generic functions
Generic Function, actual-type: Private generic functions
Generic Function, aggregatep: Private generic functions
Generic Function, alignment: Private generic functions
Generic Function, allow-undeclared-values: Private generic functions
Generic Function, bare-struct-type-p: Private generic functions
Generic Function, bit-index->keyword: Private generic functions
Generic Function, canonicalize: Private generic functions
Generic Function, dimensions: Private generic functions
Generic Function, element-type: Private generic functions
Generic Function, encoding: Private generic functions
Generic Function, expand-from-foreign: Public generic functions
Generic Function, expand-into-foreign-memory: Public generic functions
Generic Function, expand-to-foreign: Public generic functions
Generic Function, expand-to-foreign-dyn: Public generic functions
Generic Function, expand-to-foreign-dyn-indirect: Private generic functions
Generic Function, field-keywords: Private generic functions
Generic Function, fl-name: Private generic functions
Generic Function, foreign-library-handle: Private generic functions
Generic Function, foreign-library-load-state: Public generic functions
Generic Function, foreign-library-name: Public generic functions
Generic Function, foreign-struct-slot-pointer: Private generic functions
Generic Function, foreign-struct-slot-pointer-form: Private generic functions
Generic Function, foreign-struct-slot-set-form: Private generic functions
Generic Function, foreign-struct-slot-value: Private generic functions
Generic Function, foreign-struct-slot-value-form: Private generic functions
Generic Function, foreign-type-alignment: Public generic functions
Generic Function, foreign-type-error/namespace: Private generic functions
Generic Function, foreign-type-error/type-name: Private generic functions
Generic Function, foreign-type-size: Public generic functions
Generic Function, free-translated-object: Public generic functions
Generic Function, fst-free-from-foreign-p: Private generic functions
Generic Function, fst-free-to-foreign-p: Private generic functions
Generic Function, keyword-values: Private generic functions
Generic Function, name: Private generic functions
Generic Function, new-arg: Private generic functions
Generic Function, old-arg: Private generic functions
Generic Function, pointer-type: Private generic functions
Generic Function, size: Private generic functions
Generic Function, slot-count: Private generic functions
Generic Function, slot-name: Private generic functions
Generic Function, slot-offset: Private generic functions
Generic Function, slot-type: Private generic functions
Generic Function, slots: Private generic functions
Generic Function, translate-aggregate-to-foreign: Private generic functions
Generic Function, translate-camelcase-name: Public generic functions
Generic Function, translate-from-foreign: Public generic functions
Generic Function, translate-into-foreign-memory: Public generic functions
Generic Function, translate-name-from-foreign: Public generic functions
Generic Function, translate-name-to-foreign: Public generic functions
Generic Function, translate-to-foreign: Public generic functions
Generic Function, translate-underscore-separated-name: Public generic functions
Generic Function, type-keyword: Private generic functions
Generic Function, unparse-type: Private generic functions
Generic Function, unparsed-type: Private generic functions
Generic Function, value-keywords: Private generic functions
Generic Function, wrapper-from-c: Private generic functions
Generic Function, wrapper-to-c: Private generic functions
get-alignment: Private ordinary functions
get-callback: Public ordinary functions
get-foreign-library: Private ordinary functions
get-slot-info: Private ordinary functions
get-var-pointer: Public ordinary functions

H
hash-keys-to-list: Private ordinary functions

I
inc-pointer: Public compiler macros
inc-pointer: Public ordinary functions
incf-pointer: Public macros
indexes-to-row-major-index: Private ordinary functions
initialize-instance: Public standalone methods
initialize-instance: Public standalone methods
inverse-translate-objects: Private ordinary functions

K
keyword-values: Private generic functions
keyword-values: Private generic functions

L
lisp-array-to-foreign: Public ordinary functions
lisp-name: Private ordinary functions
lisp-name-p: Private ordinary functions
lisp-string-to-foreign: Public ordinary functions
list-foreign-libraries: Public ordinary functions
load-darwin-framework: Private ordinary functions
load-foreign-library: Public ordinary functions
load-foreign-library-helper: Private ordinary functions
load-foreign-library-path: Private ordinary functions

M
Macro, %%foreign-funcall: Private macros
Macro, %defcallback: Public macros
Macro, %foreign-funcall: Public macros
Macro, %foreign-funcall-pointer: Public macros
Macro, %foreign-funcall-pointer-varargs: Private macros
Macro, %foreign-funcall-varargs: Private macros
Macro, %foreign-string-length: Private macros
Macro, bget: Private macros
Macro, bset: Private macros
Macro, callback: Public macros
Macro, defbitfield: Public macros
Macro, defcallback: Public macros
Macro, defcenum: Public macros
Macro, defcfun: Public macros
Macro, defcstruct: Public macros
Macro, defctype: Public macros
Macro, defctype*: Private macros
Macro, defctype-matching: Private macros
Macro, defcunion: Public macros
Macro, defcvar: Public macros
Macro, define-built-in-foreign-type: Private macros
Macro, define-c-struct-wrapper: Public macros
Macro, define-foreign-library: Public macros
Macro, define-foreign-type: Public macros
Macro, define-mem-accessors: Private macros
Macro, define-parse-method: Public macros
Macro, define-translation-method: Public macros
Macro, define-type-mapping: Private macros
Macro, discard-docstring: Private macros
Macro, foreign-funcall: Public macros
Macro, foreign-funcall-pointer: Public macros
Macro, foreign-funcall-pointer-varargs: Public macros
Macro, foreign-funcall-varargs: Public macros
Macro, incf-pointer: Public macros
Macro, translation-forms-for-class: Public macros
Macro, use-foreign-library: Public macros
Macro, with-foreign-array: Public macros
Macro, with-foreign-object: Public macros
Macro, with-foreign-objects: Public macros
Macro, with-foreign-pointer: Public macros
Macro, with-foreign-pointer-as-string: Public macros
Macro, with-foreign-slots: Public macros
Macro, with-foreign-string: Public macros
Macro, with-foreign-strings: Public macros
Macro, with-pointer-to-vector-data: Public macros
Macro, with-tentative-type-definition: Private macros
make-foreign-bitfield: Private ordinary functions
make-foreign-enum: Private ordinary functions
make-load-form: Public standalone methods
make-pointer: Public ordinary functions
make-shareable-byte-vector: Public ordinary functions
make-struct-slot: Private ordinary functions
mem-aptr: Public compiler macros
mem-aptr: Public ordinary functions
mem-aref: Public compiler macros
mem-aref: Public ordinary functions
mem-ref: Public compiler macros
mem-ref: Public ordinary functions
mem-set: Private compiler macros
mem-set: Private ordinary functions
Method, (setf actual-type): Private generic functions
Method, (setf alignment): Private generic functions
Method, (setf foreign-library-handle): Private generic functions
Method, (setf foreign-library-load-state): Public generic functions
Method, (setf foreign-library-name): Public generic functions
Method, (setf foreign-struct-slot-value): Private generic functions
Method, (setf foreign-struct-slot-value): Private generic functions
Method, (setf foreign-type-error/namespace): Private generic functions
Method, (setf foreign-type-error/type-name): Private generic functions
Method, (setf name): Private generic functions
Method, (setf pointer-type): Private generic functions
Method, (setf size): Private generic functions
Method, (setf slot-count): Private generic functions
Method, (setf slot-offset): Private generic functions
Method, (setf slot-type): Private generic functions
Method, (setf slots): Private generic functions
Method, (setf type-keyword): Private generic functions
Method, (setf unparsed-type): Private generic functions
Method, actual-type: Private generic functions
Method, aggregatep: Private generic functions
Method, aggregatep: Private generic functions
Method, aggregatep: Private generic functions
Method, aggregatep: Private generic functions
Method, alignment: Private generic functions
Method, allow-undeclared-values: Private generic functions
Method, bare-struct-type-p: Private generic functions
Method, bare-struct-type-p: Private generic functions
Method, bare-struct-type-p: Private generic functions
Method, bit-index->keyword: Private generic functions
Method, canonicalize: Private generic functions
Method, canonicalize: Private generic functions
Method, canonicalize: Private generic functions
Method, canonicalize: Private generic functions
Method, dimensions: Private generic functions
Method, element-type: Private generic functions
Method, encoding: Private generic functions
Method, expand-from-foreign: Public generic functions
Method, expand-from-foreign: Public generic functions
Method, expand-from-foreign: Public generic functions
Method, expand-from-foreign: Public generic functions
Method, expand-from-foreign: Public generic functions
Method, expand-from-foreign: Public generic functions
Method, expand-into-foreign-memory: Public generic functions
Method, expand-into-foreign-memory: Public generic functions
Method, expand-into-foreign-memory: Public generic functions
Method, expand-into-foreign-memory: Public generic functions
Method, expand-to-foreign: Public generic functions
Method, expand-to-foreign: Public generic functions
Method, expand-to-foreign: Public generic functions
Method, expand-to-foreign: Public generic functions
Method, expand-to-foreign: Public generic functions
Method, expand-to-foreign: Public generic functions
Method, expand-to-foreign: Public generic functions
Method, expand-to-foreign-dyn: Public generic functions
Method, expand-to-foreign-dyn: Public generic functions
Method, expand-to-foreign-dyn: Public generic functions
Method, expand-to-foreign-dyn: Public generic functions
Method, expand-to-foreign-dyn-indirect: Private generic functions
Method, expand-to-foreign-dyn-indirect: Private generic functions
Method, expand-to-foreign-dyn-indirect: Private generic functions
Method, expand-to-foreign-dyn-indirect: Private generic functions
Method, expand-to-foreign-dyn-indirect: Private generic functions
Method, expand-to-foreign-dyn-indirect: Private generic functions
Method, expand-to-foreign-dyn-indirect: Private generic functions
Method, expand-to-foreign-dyn-indirect: Private generic functions
Method, field-keywords: Private generic functions
Method, fl-name: Private generic functions
Method, foreign-library-handle: Private generic functions
Method, foreign-library-load-state: Public generic functions
Method, foreign-library-name: Public generic functions
Method, foreign-struct-slot-pointer: Private generic functions
Method, foreign-struct-slot-pointer-form: Private generic functions
Method, foreign-struct-slot-set-form: Private generic functions
Method, foreign-struct-slot-set-form: Private generic functions
Method, foreign-struct-slot-value: Private generic functions
Method, foreign-struct-slot-value: Private generic functions
Method, foreign-struct-slot-value-form: Private generic functions
Method, foreign-struct-slot-value-form: Private generic functions
Method, foreign-type-alignment: Public generic functions
Method, foreign-type-alignment: Public generic functions
Method, foreign-type-alignment: Public generic functions
Method, foreign-type-alignment: Public generic functions
Method, foreign-type-alignment: Public generic functions
Method, foreign-type-error/namespace: Private generic functions
Method, foreign-type-error/type-name: Private generic functions
Method, foreign-type-size: Public generic functions
Method, foreign-type-size: Public generic functions
Method, foreign-type-size: Public generic functions
Method, foreign-type-size: Public generic functions
Method, foreign-type-size: Public generic functions
Method, free-translated-object: Public generic functions
Method, free-translated-object: Public generic functions
Method, free-translated-object: Public generic functions
Method, free-translated-object: Public generic functions
Method, free-translated-object: Public generic functions
Method, fst-free-from-foreign-p: Private generic functions
Method, fst-free-to-foreign-p: Private generic functions
Method, initialize-instance: Public standalone methods
Method, initialize-instance: Public standalone methods
Method, keyword-values: Private generic functions
Method, make-load-form: Public standalone methods
Method, name: Private generic functions
Method, new-arg: Private generic functions
Method, old-arg: Private generic functions
Method, pointer-type: Private generic functions
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, print-object: Public standalone methods
Method, size: Private generic functions
Method, slot-count: Private generic functions
Method, slot-name: Private generic functions
Method, slot-offset: Private generic functions
Method, slot-type: Private generic functions
Method, slots: Private generic functions
Method, translate-aggregate-to-foreign: Private generic functions
Method, translate-aggregate-to-foreign: Private generic functions
Method, translate-camelcase-name: Public generic functions
Method, translate-camelcase-name: Public generic functions
Method, translate-from-foreign: Public generic functions
Method, translate-from-foreign: Public generic functions
Method, translate-from-foreign: Public generic functions
Method, translate-from-foreign: Public generic functions
Method, translate-from-foreign: Public generic functions
Method, translate-from-foreign: Public generic functions
Method, translate-from-foreign: Public generic functions
Method, translate-from-foreign: Public generic functions
Method, translate-from-foreign: Public generic functions
Method, translate-from-foreign: Public generic functions
Method, translate-into-foreign-memory: Public generic functions
Method, translate-into-foreign-memory: Public generic functions
Method, translate-into-foreign-memory: Public generic functions
Method, translate-into-foreign-memory: Public generic functions
Method, translate-into-foreign-memory: Public generic functions
Method, translate-name-from-foreign: Public generic functions
Method, translate-name-to-foreign: Public generic functions
Method, translate-to-foreign: Public generic functions
Method, translate-to-foreign: Public generic functions
Method, translate-to-foreign: Public generic functions
Method, translate-to-foreign: Public generic functions
Method, translate-to-foreign: Public generic functions
Method, translate-to-foreign: Public generic functions
Method, translate-to-foreign: Public generic functions
Method, translate-to-foreign: Public generic functions
Method, translate-to-foreign: Public generic functions
Method, translate-to-foreign: Public generic functions
Method, translate-underscore-separated-name: Public generic functions
Method, translate-underscore-separated-name: Public generic functions
Method, type-keyword: Private generic functions
Method, unparse-type: Private generic functions
Method, unparse-type: Private generic functions
Method, unparse-type: Private generic functions
Method, unparse-type: Private generic functions
Method, unparse-type: Private generic functions
Method, unparsed-type: Private generic functions
Method, value-keywords: Private generic functions
Method, wrapper-from-c: Private generic functions
Method, wrapper-to-c: Private generic functions
mini-eval: Private ordinary functions

N
name: Private generic functions
name: Private generic functions
namespace-table: Private ordinary functions
native-namestring: Public ordinary functions
new-arg: Private generic functions
new-arg: Private generic functions
notice-foreign-struct-definition: Private ordinary functions
notice-foreign-type: Private ordinary functions
notice-foreign-union-definition: Private ordinary functions
null-pointer: Public ordinary functions
null-pointer-p: Public ordinary functions
null-terminator-len: Private ordinary functions

O
old-arg: Private generic functions
old-arg: Private generic functions

P
parse-args-and-types: Private ordinary functions
parse-defcallback-options: Private ordinary functions
parse-defcvar-options: Private ordinary functions
parse-deprecated-struct-type: Private ordinary functions
parse-directories: Private ordinary functions
parse-foreign-enum-like: Private ordinary functions
parse-function-options: Private ordinary functions
parse-name-and-options: Private ordinary functions
parse-type: Private ordinary functions
pointer-address: Public ordinary functions
pointer-eq: Public ordinary functions
pointer-type: Private generic functions
pointer-type: Private generic functions
pointerp: Public ordinary functions
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
print-object: Public standalone methods
promote-varargs-type: Private ordinary functions

R
read-new-value: Private ordinary functions
register-foreign-library: Private ordinary functions
reload-foreign-libraries: Public ordinary functions
report-simple-error: Private ordinary functions
row-major-index-to-indexes: Private ordinary functions

S
Setf Expander, (setf foreign-slot-value): Public setf expanders
Setf Expander, (setf mem-aref): Public setf expanders
Setf Expander, (setf mem-ref): Public setf expanders
simple-foreign-type-error: Private ordinary functions
single-bit-p: Private ordinary functions
size: Private generic functions
size: Private generic functions
slot-count: Private generic functions
slot-count: Private generic functions
slot-name: Private generic functions
slot-name: Private generic functions
slot-offset: Private generic functions
slot-offset: Private generic functions
slot-type: Private generic functions
slot-type: Private generic functions
slots: Private generic functions
slots: Private generic functions
slots-in-order: Private ordinary functions
split-if: Private ordinary functions
structure-by-value-p: Private ordinary functions
structure-slots: Private ordinary functions

T
translate-aggregate-to-foreign: Private generic functions
translate-aggregate-to-foreign: Private generic functions
translate-aggregate-to-foreign: Private generic functions
translate-camelcase-name: Public generic functions
translate-camelcase-name: Public generic functions
translate-camelcase-name: Public generic functions
translate-from-foreign: Public generic functions
translate-from-foreign: Public generic functions
translate-from-foreign: Public generic functions
translate-from-foreign: Public generic functions
translate-from-foreign: Public generic functions
translate-from-foreign: Public generic functions
translate-from-foreign: Public generic functions
translate-from-foreign: Public generic functions
translate-from-foreign: Public generic functions
translate-from-foreign: Public generic functions
translate-from-foreign: Public generic functions
translate-into-foreign-memory: Public generic functions
translate-into-foreign-memory: Public generic functions
translate-into-foreign-memory: Public generic functions
translate-into-foreign-memory: Public generic functions
translate-into-foreign-memory: Public generic functions
translate-into-foreign-memory: Public generic functions
translate-name-from-foreign: Public generic functions
translate-name-from-foreign: Public generic functions
translate-name-to-foreign: Public generic functions
translate-name-to-foreign: Public generic functions
translate-objects: Private ordinary functions
translate-to-foreign: Public generic functions
translate-to-foreign: Public generic functions
translate-to-foreign: Public generic functions
translate-to-foreign: Public generic functions
translate-to-foreign: Public generic functions
translate-to-foreign: Public generic functions
translate-to-foreign: Public generic functions
translate-to-foreign: Public generic functions
translate-to-foreign: Public generic functions
translate-to-foreign: Public generic functions
translate-to-foreign: Public generic functions
translate-underscore-separated-name: Public generic functions
translate-underscore-separated-name: Public generic functions
translate-underscore-separated-name: Public generic functions
translation-forms-for-class: Public macros
try-foreign-library-alternatives: Private ordinary functions
type-keyword: Private generic functions
type-keyword: Private generic functions

U
undefine-foreign-type: Private ordinary functions
undefined-foreign-type-error: Private ordinary functions
unload-shared-object-present-p: Private ordinary functions
unparse-type: Private generic functions
unparse-type: Private generic functions
unparse-type: Private generic functions
unparse-type: Private generic functions
unparse-type: Private generic functions
unparse-type: Private generic functions
unparsed-type: Private generic functions
unparsed-type: Private generic functions
use-foreign-library: Public macros

V
value-keywords: Private generic functions
value-keywords: Private generic functions

W
warn-if-kw-or-belongs-to-cl: Private ordinary functions
warn-obsolete-argument: Private ordinary functions
with-foreign-array: Public macros
with-foreign-object: Public macros
with-foreign-objects: Public macros
with-foreign-pointer: Public macros
with-foreign-pointer-as-string: Public macros
with-foreign-slots: Public macros
with-foreign-string: Public macros
with-foreign-strings: Public macros
with-pointer-to-vector-data: Public macros
with-tentative-type-definition: Private macros
wrapper-from-c: Private generic functions
wrapper-from-c: Private generic functions
wrapper-to-c: Private generic functions
wrapper-to-c: Private generic functions

Jump to:   %   (  
A   B   C   D   E   F   G   H   I   K   L   M   N   O   P   R   S   T   U   V   W  

Next: , Previous: , Up: Indexes   [Contents][Index]

A.3 Variables

Jump to:   *   +  
A   B   C   D   E   F   H   K   L   N   O   P   S   T   U   V  
Index Entry  Section

*
*built-in-float-types*: Public special variables
*built-in-foreign-types*: Public special variables
*built-in-integer-types*: Public special variables
*callbacks*: Private special variables
*cffi-feature-suffix-map*: Private special variables
*darwin-framework-directories*: Public special variables
*default-foreign-encoding*: Public special variables
*default-type-parsers*: Private special variables
*defcstruct-hook*: Private special variables
*foreign-libraries*: Private special variables
*foreign-library-directories*: Public special variables
*foreign-string-mappings*: Private special variables
*foreign-structures-by-value*: Private special variables
*other-builtin-types*: Public special variables
*possible-float-types*: Private special variables
*runtime-translator-form*: Private special variables
*struct-type-parsers*: Private special variables
*union-type-parsers*: Private special variables

+
+valid-enum-base-types+: Private special variables

A
actual-type: Private classes
alignment: Private classes
allow-undeclared-values: Private classes

B
bare: Private classes
bit-index->keyword: Private classes

C
count: Private classes

D
dimensions: Private classes

E
element-type: Private classes
encoding: Private classes

F
field-keywords: Private classes
free-from-foreign: Private classes
free-to-foreign: Private classes
from-c: Private classes

H
handle: Public classes

K
keyword-values: Private classes

L
load-state: Public classes

N
name: Public classes
name: Private conditions
name: Private classes
name: Private classes
namespace: Private conditions
new-arg: Private conditions

O
offset: Private classes
old-arg: Private conditions
options: Public classes

P
pathname: Public classes
pointer-type: Private classes

S
size: Private classes
Slot, actual-type: Private classes
Slot, alignment: Private classes
Slot, allow-undeclared-values: Private classes
Slot, bare: Private classes
Slot, bit-index->keyword: Private classes
Slot, count: Private classes
Slot, dimensions: Private classes
Slot, element-type: Private classes
Slot, encoding: Private classes
Slot, field-keywords: Private classes
Slot, free-from-foreign: Private classes
Slot, free-to-foreign: Private classes
Slot, from-c: Private classes
Slot, handle: Public classes
Slot, keyword-values: Private classes
Slot, load-state: Public classes
Slot, name: Public classes
Slot, name: Private conditions
Slot, name: Private classes
Slot, name: Private classes
Slot, namespace: Private conditions
Slot, new-arg: Private conditions
Slot, offset: Private classes
Slot, old-arg: Private conditions
Slot, options: Public classes
Slot, pathname: Public classes
Slot, pointer-type: Private classes
Slot, size: Private classes
Slot, slots: Private classes
Slot, spec: Public classes
Slot, to-c: Private classes
Slot, type: Public classes
Slot, type: Private classes
Slot, type-keyword: Private classes
Slot, type-name: Private conditions
Slot, unparsed-type: Private classes
Slot, value-keywords: Private classes
slots: Private classes
spec: Public classes
Special Variable, *built-in-float-types*: Public special variables
Special Variable, *built-in-foreign-types*: Public special variables
Special Variable, *built-in-integer-types*: Public special variables
Special Variable, *callbacks*: Private special variables
Special Variable, *cffi-feature-suffix-map*: Private special variables
Special Variable, *darwin-framework-directories*: Public special variables
Special Variable, *default-foreign-encoding*: Public special variables
Special Variable, *default-type-parsers*: Private special variables
Special Variable, *defcstruct-hook*: Private special variables
Special Variable, *foreign-libraries*: Private special variables
Special Variable, *foreign-library-directories*: Public special variables
Special Variable, *foreign-string-mappings*: Private special variables
Special Variable, *foreign-structures-by-value*: Private special variables
Special Variable, *other-builtin-types*: Public special variables
Special Variable, *possible-float-types*: Private special variables
Special Variable, *runtime-translator-form*: Private special variables
Special Variable, *struct-type-parsers*: Private special variables
Special Variable, *union-type-parsers*: Private special variables
Special Variable, +valid-enum-base-types+: Private special variables

T
to-c: Private classes
type: Public classes
type: Private classes
type-keyword: Private classes
type-name: Private conditions

U
unparsed-type: Private classes

V
value-keywords: Private classes

Jump to:   *   +  
A   B   C   D   E   F   H   K   L   N   O   P   S   T   U   V  

Previous: , Up: Indexes   [Contents][Index]

A.4 Data types

Jump to:   A   C   E   F   L   M   N   O   P   S   T   U  
Index Entry  Section

A
aggregate-struct-slot: Private classes

C
c-namespace-name: Private types
cffi: The cffi system
cffi: The cffi package
cffi-error: Private conditions
cffi-features: The cffi-features package
cffi-sbcl.lisp: The cffi/src/cffi-sbcl․lisp file
cffi-sys: The cffi-sys package
cffi.asd: The cffi/cffi․asd file
Class, aggregate-struct-slot: Private classes
Class, enhanced-foreign-type: Private classes
Class, enhanced-typedef: Private classes
Class, foreign-array-type: Private classes
Class, foreign-bitfield: Private classes
Class, foreign-boolean-type: Private classes
Class, foreign-built-in-type: Private classes
Class, foreign-enum: Private classes
Class, foreign-library: Public classes
Class, foreign-pointer-type: Private classes
Class, foreign-string+ptr-type: Private classes
Class, foreign-string-type: Private classes
Class, foreign-struct-slot: Private classes
Class, foreign-struct-type: Private classes
Class, foreign-type: Private classes
Class, foreign-type-alias: Private classes
Class, foreign-type-wrapper: Private classes
Class, foreign-typedef: Private classes
Class, foreign-union-type: Private classes
Class, named-foreign-type: Private classes
Class, simple-struct-slot: Private classes
Class, translatable-foreign-type: Private classes
Condition, cffi-error: Private conditions
Condition, foreign-library-undefined-error: Private conditions
Condition, foreign-type-error: Private conditions
Condition, load-foreign-library-error: Public conditions
Condition, obsolete-argument-warning: Private conditions
Condition, simple-foreign-type-error: Private conditions
Condition, undefined-foreign-type-error: Private conditions

E
early-types.lisp: The cffi/src/early-types․lisp file
enhanced-foreign-type: Private classes
enhanced-typedef: Private classes
enum-key: Private types
enum.lisp: The cffi/src/enum․lisp file

F
features.lisp: The cffi/src/features․lisp file
File, cffi-sbcl.lisp: The cffi/src/cffi-sbcl․lisp file
File, cffi.asd: The cffi/cffi․asd file
File, early-types.lisp: The cffi/src/early-types․lisp file
File, enum.lisp: The cffi/src/enum․lisp file
File, features.lisp: The cffi/src/features․lisp file
File, foreign-vars.lisp: The cffi/src/foreign-vars․lisp file
File, functions.lisp: The cffi/src/functions․lisp file
File, libraries.lisp: The cffi/src/libraries․lisp file
File, package.lisp: The cffi/src/package․lisp file
File, strings.lisp: The cffi/src/strings․lisp file
File, structures.lisp: The cffi/src/structures․lisp file
File, types.lisp: The cffi/src/types․lisp file
File, utils.lisp: The cffi/src/utils․lisp file
foreign-array-type: Private classes
foreign-bitfield: Private classes
foreign-boolean-type: Private classes
foreign-built-in-type: Private classes
foreign-enum: Private classes
foreign-library: Public classes
foreign-library-undefined-error: Private conditions
foreign-pointer: Public types
foreign-pointer-type: Private classes
foreign-string+ptr-type: Private classes
foreign-string-type: Private classes
foreign-struct-slot: Private classes
foreign-struct-type: Private classes
foreign-type: Private classes
foreign-type-alias: Private classes
foreign-type-error: Private conditions
foreign-type-wrapper: Private classes
foreign-typedef: Private classes
foreign-union-type: Private classes
foreign-vars.lisp: The cffi/src/foreign-vars․lisp file
functions.lisp: The cffi/src/functions․lisp file

L
libraries.lisp: The cffi/src/libraries․lisp file
load-foreign-library-error: Public conditions

M
Module, src: The cffi/src module

N
named-foreign-type: Private classes

O
obsolete-argument-warning: Private conditions

P
Package, cffi: The cffi package
Package, cffi-features: The cffi-features package
Package, cffi-sys: The cffi-sys package
package.lisp: The cffi/src/package․lisp file

S
simple-foreign-type-error: Private conditions
simple-struct-slot: Private classes
src: The cffi/src module
strings.lisp: The cffi/src/strings․lisp file
structures.lisp: The cffi/src/structures․lisp file
System, cffi: The cffi system

T
translatable-foreign-type: Private classes
Type, c-namespace-name: Private types
Type, enum-key: Private types
Type, foreign-pointer: Public types
types.lisp: The cffi/src/types․lisp file

U
undefined-foreign-type-error: Private conditions
utils.lisp: The cffi/src/utils․lisp file

Jump to:   A   C   E   F   L   M   N   O   P   S   T   U