aggregate FLI types 12 , 14 - 16
aggregate types 12
align-of
function
67
alloca
function
68
allocate-dynamic-foreign-object
function
68
allocate-foreign-block
function
70
allocate-foreign-object
function
71
allocating memory dynamically 7 , 72
Android 35
C 61
calling from Lisp 2 , 61 , 103
calling from Lisp with a block 61
calling from Lisp 2 , 61 , 103
calling from Lisp with a block 61
declarations 229
hard-float 35
soft-float 35
:c-array
FLI type
194
cast-integer
function
74
:char
FLI type
196
CLANG 61
foreign-type-error
141
connected-module-pathname
function
74
argument to register-module
164
:const
FLI type
197
convert-from-foreign-string
function
75
convert-integer-to-dynamic-foreign-object
function
77
convert-to-dynamic-foreign-string
function
79
convert-to-foreign-string
function
77
copy-pointer
function
81
decf-pointer
function
82
define-c-enum
macro
83
define-c-struct
macro
85
define-c-typedef
macro
88
define-c-union
macro
89
define-foreign-block-callable-type
macro
91
define-foreign-block-invoker
macro
92
define-foreign-callable
macro
31
,
35
,
93
define-foreign-converter
macro
98
define-foreign-forward-reference-type
macro
102
define-foreign-funcallable
macro
102
define-foreign-function
macro
31
,
103
define-foreign-pointer
macro
22
,
109
define-foreign-type
macro
11
,
110
define-foreign-variable
macro
112
define-opaque-pointer
macro
116
defining FLI functions 6
defining FLI types 4
ambiguity 237
automated generation 229
defsystem
macro
60
dereference
function
117
disconnect-module
function
120
exporting functions from 58 - 60
documentation strings 12
:double
FLI type
197
dynamic memory allocation 7
:ef-mb-string
FLI type
198
:ef-wc-string
FLI type
199
Embedded dynamic modules 60
:embedded-module
member option
60
:enum
FLI type
200
:enumeration
FLI type
201
enum-symbols
function
121
enum-symbol-value
function
121
enum-symbol-value-pairs
function
121
enum-values
function
121
enum-value-symbol
function
121
DYLD_LIBRARY_PATH
166
LD_LIBRARY_PATH
166
PATH
166
fill-foreign-object
function
123
:fixnum
FLI type
201
defining 6
FLI type constructors 12
:boolean
193
:byte
194
:c-array
194
:char
196
:const
197
defining 4
defining new types 57
:double
197
:ef-mb-string
198
:ef-wc-string
199
:enum
200
:enumeration
201
:fixnum
201
:float
201
:foreign-array
202
foreign-block-pointer
61
,
203
:function
204
:int
205
:int16
205
:int32
205
:int64
205
:int8
205
:intmax
205
:intptr
205
:lisp-array
206
:lisp-double-float
208
:lisp-float
209
:lisp-simple-1d-array
209
:lisp-single-float
210
:long
210
:long-long
211
lpcstr
53
lpctstr
54
lpcwstr
54
lptstr
54
:one-of
212
:pointer
213
:ptr
213
:ptrdiff-t
214
:reference
214
:reference-pass
216
:reference-return
216
released-foreign-block-pointer
217
:short
217
:signed
218
:size-t
219
:ssize-t
219
str
53
:struct
220
:time-t
221
tstr
54
:uint16
222
:uint32
222
:uint64
222
:uint8
222
:uintmax
222
:uintptr
222
:union
223
:unsigned
224
:void
225
:volatile
226
:wchar-t
226
:wrapper
226
wstr
54
:float
FLI type
201
Foreign blocks 60
defining 31
passing and returning strings 34
Foreign Parser 229
foreign-aref
function
124
:foreign-array
FLI type
202
foreign-array-dimensions
function
125
foreign-array-element-type
function
126
foreign-array-pointer
function
127
foreign-block-copy
function
128
foreign-block-pointer
FLI type
61
,
203
foreign-block-release
function
129
foreign-function-pointer
function
130
foreign-parser package symbols
process-foreign-file
234
foreign-slot-names
function
132
foreign-slot-offset
function
133
foreign-slot-pointer
function
134
foreign-slot-type
function
135
foreign-slot-value
function
137
foreign-typed-aref
function
141
foreign-type-equal-p
function
140
foreign-type-error
condition
141
free
function
142
free-foreign-block
function
143
free-foreign-object
function
144
:function
FLI type
204
align-of
67
alloca
68
allocate-dynamic-foreign-object
68
allocate-foreign-block
70
allocate-foreign-object
71
cast-integer
74
connected-module-pathname
74
convert-from-foreign-string
75
convert-integer-to-dynamic-foreign-object
77
convert-to-dynamic-foreign-string
79
convert-to-foreign-string
77
copy-pointer
81
decf-pointer
82
dereference
117
disconnect-module
120
enum-symbols
121
enum-symbol-value
121
enum-symbol-value-pairs
121
enum-values
121
enum-value-symbol
121
fill-foreign-object
123
foreign-aref
124
foreign-array-dimensions
125
foreign-array-element-type
126
foreign-array-pointer
127
foreign-block-copy
128
foreign-block-release
129
foreign-function-pointer
130
foreign-slot-names
132
foreign-slot-offset
133
foreign-slot-pointer
134
foreign-slot-type
135
foreign-slot-value
137
foreign-typed-aref
141
foreign-type-equal-p
140
free
142
free-foreign-block
143
free-foreign-object
144
get-embedded-module
145
get-embedded-module-data
146
incf-pointer
148
install-embedded-module
149
make-integer-from-bytes
151
make-pointer
151
malloc
153
module-unresolved-symbols
154
null-pointer-p
155
pointer-address
156
pointer-element-size
157
pointer-element-type
157
pointer-element-type-p
159
pointer-eq
159
pointerp
161
pointer-pointer-type
160
print-collected-template-info
162
print-foreign-modules
163
process-foreign-file
234
register-module
163
replace-foreign-array
169
replace-foreign-object
173
set-locale
174
set-locale-encodings
175
setup-embedded-module
176
size-of
177
start-collecting-template-info
178
GCD 61
gdi+ 64
gdiplus 64
get-embedded-module
function
145
get-embedded-module-data
function
146
Grand Central Dispatch 61
graphics functions 64
incf-pointer
function
148
install-embedded-module
function
149
:int
FLI type
205
:int16
FLI type
205
:int32
FLI type
205
int32
type
142
:int64
FLI type
205
int64
type
142
:int8
FLI type
205
:intmax
FLI type
205
:intptr
FLI type
205
iOS 35
languages supported 1
argument to register-module
164
Linux 35
calling into C with a block 61
calling into C++ with a block 61
:lisp-array
FLI type
206
:lisp-double-float
FLI type
208
:lisp-float
FLI type
209
:lisp-simple-1d-array
FLI type
209
:lisp-single-float
FLI type
210
*locale-external-formats*
variable
150
:long
FLI type
210
:long-long
FLI type
211
lpcstr
FLI type
53
lpctstr
FLI type
54
lpcwstr
FLI type
54
lptstr
FLI type
54
define-c-enum
83
define-c-struct
85
define-c-typedef
88
define-c-union
89
define-foreign-block-callable-type
91
define-foreign-block-invoker
92
define-foreign-callable
31
,
35
,
93
define-foreign-converter
98
define-foreign-forward-reference-type
102
define-foreign-funcallable
102
define-foreign-function
31
,
103
define-foreign-pointer
22
,
109
define-foreign-variable
112
define-opaque-pointer
116
defsystem
60
with-coerced-pointer
178
with-dynamic-foreign-objects
180
with-dynamic-lisp-array-pointer
184
with-foreign-block
185
with-foreign-slots
187
with-foreign-string
188
with-integer-bytes
190
with-local-foreign-block
191
make-integer-from-bytes
function
151
make-pointer
function
151
malloc 23
malloc
function
153
module-unresolved-symbols
function
154
64-bit integer FLI types supported in 32-bit LispWorks 97 , 119 , 138
:allow-sign-mismatch
argument to replace-foreign-array
170
foreign-function-pointer
function
130
hard-float and soft-float calling conventions for ARM platforms 35
released-foreign-block-pointer
FLI type descriptor
217
Store a foreign module in a Lisp image with defsystem
member option :embedded-module
60
null pointers 24
*null-pointer*
variable
154
null-pointer-p
function
155
:one-of
FLI type
212
:pointer
FLI type
213
pointer-address
function
156
pointer-element-size
function
157
pointer-element-type
function
157
pointer-element-type-p
function
159
pointer-eq
function
159
pointerp
function
161
pointer-pointer-type
function
160
coercing 25
copying 23
creating 21
dynamically allocating 27
null pointers 24
*preprocessor*
variable
230
,
233
*preprocessor-format-string*
variable
233
*preprocessor-include-path*
variable
233
,
234
*preprocessor-options*
variable
234
print-collected-template-info
function
162
print-foreign-modules
function
163
process-foreign-file
function
234
:ptr
FLI type
213
:ptrdiff-t
FLI type
214
:reference
FLI type
214
:reference-pass
FLI type
216
:reference-return
FLI type
216
register-module
function
163
released-foreign-block-pointer
FLI type
217
replace-foreign-array
function
169
replace-foreign-object
function
173
foreign blocks 65
miscellaneous examples 66
set-locale
function
174
set-locale-encodings
function
175
setup-embedded-module
function
176
:short
FLI type
217
:signed
FLI type
218
size-of
function
177
:size-t
FLI type
219
:ssize-t
FLI type
219
start-collecting-template-info
function
178
str
FLI type
53
modifying in C 41
returning from C 45
:struct
FLI type
220
:uint16
FLI type
222
:uint32
FLI type
222
:uint64
FLI type
222
:uint8
FLI type
222
:uintmax
FLI type
222
:uintptr
FLI type
222
:union
FLI type
223
:unsigned
FLI type
224
*locale-external-formats*
150
*null-pointer*
154
*preprocessor-format-string*
233
*preprocessor-include-path*
233
,
234
*preprocessor-options*
234
:void
FLI type
225
:volatile
FLI type
226
:wchar-t
FLI type
226
with-coerced-pointer
macro
178
with-dynamic-foreign-objects
macro
180
with-dynamic-lisp-array-pointer
macro
184
with-foreign-block
macro
185
with-foreign-slots
macro
187
with-foreign-string
macro
188
with-integer-bytes
macro
190
with-local-foreign-block
macro
191
:wrapper
FLI type
226
wstr
FLI type
54
LispWorks Foreign Language Interface User Guide and Reference Manual - 16 Feb 2015