NextPrevTopContents

Index

A

align-of function 51

alloca function 52

allocate-dynamic-foreign-object function 52

allocate-foreign-object function 54

allocating memory dynamically 7

B

:boolean type 151

:byte type 152

C

C

calling from Lisp 2 , 77

calling into Lisp 44 , 71

C code

declarations 181

C++

calling from Lisp 2 , 77

calling into Lisp 44 , 71

:c-array type 152

cast-integer function 56

:char type 153

conditions

foreign-type-error 109

connected-module-pathname function 56

:const type 154

convert-from-foreign-string function 57

convert-to-dynamic-foreign-string function 60

convert-to-foreign-string function 58

copy-pointer function 61

D

decf-pointer function 62

define-c-enum macro 63

define-c-struct macro 65

define-c-typedef macro 68

define-c-union macro 69

define-foreign-callable macro 43 , 46 , 71

define-foreign-forward-reference-type macro 75

define-foreign-funcallable macro 76

define-foreign-function macro 43 , 77

define-foreign-pointer macro 20 , 83

define-foreign-type macro 9 , 83

define-foreign-variable macro 85

define-opaque-pointer macro 88

defining FLI functions 5

defining FLI types 4

defining forms

ambiguity 190

automated generation 181

dereference function 90

disconnect-module function 93

DLLs

exporting functions from 47 - 48

documentation strings 10

:double type 154

dynamic memory allocation 7

E

:ef-mb-string type 155

:ef-wc-string type 156

:enum type 157

:enumeration type 158

enum-symbol-value function 93

enum-value-symbol function 94

F

fill-foreign-object function 95

:fixnum type 158

FLI functions

defining 5

FLI templates 124 , 138

FLI types

defining 4

:float type 159

foreign callable

defining 43

passing and returning strings 45

Foreign Parser 181

foreign-aref function 96

:foreign-array type 159

foreign-array-dimensions function 98

foreign-array-element-type function 99

foreign-array-pointer function 99

foreign-parser package symbols

process-foreign-file 188

foreign-slot-names function 100

foreign-slot-offset function 101

foreign-slot-pointer function 102

foreign-slot-type function 104

foreign-slot-value function 105

foreign-typed-aref function 109

foreign-type-equal-p function 108

foreign-type-error condition 109

free function 111

free-foreign-object function 111

:function type 160

functions

align-of 51

alloca 52

allocate-dynamic-foreign-object 52

allocate-foreign-object 54

cast-integer 56

connected-module-pathname 56

convert-from-foreign-string 57

convert-to-dynamic-foreign-string 60

convert-to-foreign-string 58

copy-pointer 61

decf-pointer 62

dereference 90

disconnect-module 93

enum-symbol-value 93

enum-value-symbol 94

fill-foreign-object 95

foreign-aref 96

foreign-array-dimensions 98

foreign-array-element-type 99

foreign-array-pointer 99

foreign-slot-names 100

foreign-slot-offset 101

foreign-slot-pointer 102

foreign-slot-type 104

foreign-slot-value 105

foreign-typed-aref 109

foreign-type-equal-p 108

free 111

free-foreign-object 111

incf-pointer 112

make-pointer 114

malloc 115

module-unresolved-symbols 116

null-pointer-p 117

pointer-address 118

pointer-element-size 119

pointer-element-type 120

pointer-element-type-p 121

pointer-eq 121

pointerp 123

pointer-pointer-type 122

print-collected-template-info 124

print-foreign-modules 125

process-foreign-file 188

register-module 125

replace-foreign-array 131

replace-foreign-object 133

set-locale 135

set-locale-encodings 136

size-of 136

start-collecting-template-info 137

G

gdi+ 48

gdiplus 48

graphics functions 48

I

incf-pointer function 112

:int type 161

L

languages supported 1

Lisp

calling from C 44 , 71

calling from C++ 44 , 71

calling into C 2 , 77

calling into C++ 2 , 77

:lisp-array type 161

:lisp-double-float type 163

:lisp-float type 164

:lisp-simple-1d-array type 164

:lisp-single-float type 165

*locale-external-formats* variable 113

:long type 166

:long-long type 166

M

macros

define-c-enum 63

define-c-struct 65

define-c-typedef 68

define-c-union 69

define-foreign-callable 43 , 46 , 71

define-foreign-forward-reference-type 75

define-foreign-funcallable 76

define-foreign-function 43 , 77

define-foreign-pointer 20 , 83

define-foreign-type 9 , 83

define-foreign-variable 85

define-opaque-pointer 88

process-foreign-code 186

with-coerced-pointer 138

with-dynamic-foreign-objects 140

with-dynamic-foreign-objects-with-cleanups 143

with-dynamic-lisp-array-pointer 144

with-foreign-slots 146

with-foreign-string 148

make-pointer function 114

malloc 21

malloc function 115

memory allocation 7 , 21

module-unresolved-symbols function 116

N

null pointers 21

*null-pointer* variable 117

null-pointer-p function 117

O

:one-of type 167

P

:pointer type 168

pointer-address function 118

pointer-element-size function 119

pointer-element-type function 120

pointer-element-type-p function 121

pointer-eq function 121

pointerp function 123

pointer-pointer-type function 122

pointers 19 - 26

coercing 23

copying 21

creating 19

dereferencing 22 - 24

dynamically allocating 25

null pointers 21

test functions for 21 - 22

*preprocessor* variable 182 , 185

*preprocessor-format-string* variable 185

*preprocessor-include-path* variable 185 , 186

*preprocessor-options* variable 186

print-collected-template-info function 124

print-foreign-modules function 125

process-foreign-code macro 186

process-foreign-file function 188

:ptr type 169

R

:reference type 169

:reference-pass type 170

:reference-return type 171

register-module function 125

replace-foreign-array function 131

replace-foreign-object function 133

S

set-locale function 135

set-locale-encodings function 136

:short type 172

:signed type 172

size-of function 136

start-collecting-template-info function 137

strings

modifying in C 29

passing to C 27 , 31

returning from C 33

:struct type 173

T

templates, FLI 124 , 138

type constructors 10

types

:boolean 151

:byte 152

:c-array 152

:char 153

:const 154

:double 154

:ef-mb-string 155

:ef-wc-string 156

:enum 157

:enumeration 158

:fixnum 158

:float 159

:foreign-array 159

:function 160

:int 161

:lisp-array 161

:lisp-double-float 163

:lisp-float 164

:lisp-simple-1d-array 164

:lisp-single-float 165

:long 166

:long-long 166

:one-of 167

:pointer 168

:ptr 169

:reference 169

:reference-pass 170

:reference-return 171

:short 172

:signed 172

:struct 173

:union 175

:unsigned 176

:void 177

:volatile 178

:wchar-t 178

:wrapper 178

aggregate 10 , 12 - 14

defining new types 42 - 43

immediate 10 - 11

U

:union type 175

:unsigned type 176

V

variables

*locale-external-formats* 113

*null-pointer* 117

*preprocessor* 182 , 185

*preprocessor-format-string* 185

*preprocessor-include-path* 185 , 186

*preprocessor-options* 186

:void type 177

:volatile type 178

W

:wchar-t type 178

with-coerced-pointer macro 138

with-dynamic-foreign-objects macro 140

with-dynamic-foreign-objects-with-cleanups macro 143

with-dynamic-lisp-array-pointer macro 144

with-foreign-slots macro 146

with-foreign-string macro 148

:wrapper type 178


LispWorks Foreign Language Interface User Guide and Reference Manual - 14 Mar 2008

NextPrevTopContents