This is the ffa Reference Manual, generated automatically by Declt version 4.0 beta 2 "William Riker" on Sun Dec 15 06:06:13 2024 GMT+0.
The main system appears first, followed by any subsystem dependency.
ffa
Foreign friendly arrays
Tamas K Papp
LLGPL
cffi
(system).
cl-utilities
(system).
metabang-bind
(system).
iterate
(system).
package.lisp
(file).
types.lisp
(file).
utils.lisp
(file).
pointer.lisp
(file).
Files are sorted by type and then listed depth-first from the systems components trees.
ffa/types.lisp
package.lisp
(file).
ffa
(system).
elt-type
(function).
*cffi-and-lisp-types*
(special variable).
elt-type-size
(function).
ffa/utils.lisp
types.lisp
(file).
ffa
(system).
displace-array
(function).
find-original-array
(function).
ffa/pointer.lisp
utils.lisp
(file).
ffa
(system).
with-pointer-to-array
(macro).
with-pointers-to-arrays
(macro).
complex-mem-aref
(function).
(setf complex-mem-aref)
(function).
copy-array-from-pointer
(function).
copy-array-to-pointer
(function).
copy-to-pointer
(macro).
iter%
(macro).
part-type
(function).
pin-to-pointer
(macro).
valid-direction-p
(function).
Packages are listed by definition order.
ffa
cl-utilities
.
common-lisp
.
iterate
.
metabang.bind
.
elt-type
(function).
with-pointer-to-array
(macro).
with-pointers-to-arrays
(macro).
*cffi-and-lisp-types*
(special variable).
complex-mem-aref
(function).
(setf complex-mem-aref)
(function).
copy-array-from-pointer
(function).
copy-array-to-pointer
(function).
copy-to-pointer
(macro).
displace-array
(function).
elt-type-size
(function).
find-original-array
(function).
iter%
(macro).
part-type
(function).
pin-to-pointer
(macro).
valid-direction-p
(function).
Definitions are sorted by export status, category, package, and then by lexicographic order.
See the documentation.
ffa
.
Same as with-pointer-to-array, but with multiple arrays, pointers, etc. parameter-lists needs to be a list of lists.
ffa
.
Allocate memory area and establish desired mapping between array and pointer (copy in and/or out as needed). Array will be available at pointer, which is a local binding so you do whatever you want with it (change its value etc).
ffa
.
Common iteration for all cases below. IMPORTANT: This macro captures pointer-index, size, array-index and index-offset.
ffa
.
Use SBCL’s sb-sys:with-pinned-objects and sb-ext:array-storage-vector for mapping an array to a memory location. NOTE: checking that cffi-type matches the type of the array is the responsibility of the user of this macro. The total size of the array is checked.
ffa
.
aref workaround for C99 complex types. Part-type is NOT checked.
ffa
.
setf aref workaround for C99 complex types. Part-type is NOT checked.
ffa
.
Copy size elements to an array (starting at index-offset) of element type lisp-type from the memory area that starts at pointer, coercing the elements if necessary.
ffa
.
Copy size elements from array (starting at index-offset) of type lisp-type to the memory area that starts at pointer, coercing the elements if necessary.
ffa
.
Make a displaced array from array with the given dimensions and the index-offset and the same element-type as array. Tries to displace from the original array.
ffa
.
Find the original parent of a displaced array, return this and the sum of displaced index offsets.
ffa
.
Return the appropriate part-type if cffi-type is complex, otherwise NIL.
ffa
.
Jump to: | (
C D E F I M P V W |
---|
Jump to: | (
C D E F I M P V W |
---|
Jump to: | *
S |
---|
Index Entry | Section | ||
---|---|---|---|
| |||
* | |||
*cffi-and-lisp-types* : | Private special variables | ||
| |||
S | |||
Special Variable, *cffi-and-lisp-types* : | Private special variables | ||
|
Jump to: | *
S |
---|
Jump to: | F P S T U |
---|
Jump to: | F P S T U |
---|