23577
((3) 0 () 42 ((q lib "ffi/vector.rkt") (q 22822 . 22) (q quote #%foreign) (q lib "ffi/unsafe.rkt") (q 2511 . 16) (q lib "ffi/unsafe/com.rkt") (q lib "ffi/unsafe/objc.rkt") (q 16171 . 22) (q 21364 . 22) (q lib "ffi/unsafe/alloc.rkt") (q 17804 . 23) (q 18684 . 22) (q 19513 . 24) (q 43249 . 7) (q lib "ffi/unsafe/cvector.rkt") (q 20484 . 23) (q 17000 . 22) (q 2981 . 4) (q lib "ffi/unsafe/atomic.rkt") (q 15381 . 22) (q 43411 . 7) (q 22093 . 22) (q lib "ffi/com-registry.rkt") (q 14671 . 22) (q 2166 . 13) (q 3340 . 4) (q 2791 . 6) (q 3256 . 4) (q lib "ffi/file.rkt") (q lib "ffi/winapi.rkt") (q 25624 . 7) (q 2452 . 4) (q lib "ffi/unsafe/define.rkt") (q 10591 . 25) (q 2891 . 3) (q 2393 . 4) (q 24623 . 17) (q lib "ffi/unsafe/custodian.rkt") (q lib "ffi/unsafe/nsalloc.rkt") (q 1790 . 5) (q lib "ffi/unsafe/try-atomic.rkt") (q 2936 . 3)) () (h ! (equal) ((c def c (c (? . 0) q f80vector-set!)) c (? . 1)) ((c def c (c (? . 0) q f80vector-ref)) c (? . 1)) ((c def c (c (? . 0) q s64vector)) c (? . 12)) ((c def c (c (? . 2) q ffi-obj-lib)) c (? . 13)) ((c def c (c (? . 2) q _longdouble)) q (3044 . 2)) ((c def c (c (? . 2) q _float)) c (? . 17)) ((c def c (c (? . 6) q sel_registerName)) q (32185 . 3)) ((c def c (c (? . 9) q releaser)) q (27366 . 4)) ((c def c (c (? . 0) q s16vector-length)) c (? . 7)) ((c def c (c (? . 0) q u32vector->cpointer)) c (? . 11)) ((c def c (c (? . 3) q cast)) q (42704 . 5)) ((c form c (c (? . 3) q _box)) q (6154 . 2)) ((c def c (c (? . 3) q _sintptr)) c (? . 4)) ((c def c (c (? . 5) q _IUnknown)) q (41533 . 2)) ((c def c (c (? . 3) q _string/latin-1)) c (? . 27)) ((c def c (c (? . 0) q f32vector->cpointer)) c (? . 8)) ((c def c (c (? . 2) q _pointer)) q (3637 . 2)) ((c def c (c (? . 3) q _ulong)) c (? . 4)) ((c def c (c (? . 18) q start-atomic)) q (28926 . 2)) ((c def c (c (? . 29) q winapi)) q (42150 . 2)) ((c form c (c (? . 3) q define-cpointer-type)) q (25349 . 5)) ((c def c (c (? . 5) q make-com-object)) q (40133 . 7)) ((c def c (c (? . 2) q _stdbool)) q (3073 . 2)) ((c def c (c (? . 3) q _string*/utf-8)) c (? . 25)) ((c def c (c (? . 2) q free)) q (14118 . 3)) ((c def c (c (? . 2) q _scheme)) q (3716 . 2)) ((c def c (c (? . 3) q array?)) q (8118 . 3)) ((c def c (c (? . 5) q AddRef)) q (39951 . 3)) ((c def c (c (? . 6) q _id)) q (29734 . 2)) ((c def c (c (? . 5) q com-set-property-type)) q (37098 . 6)) ((c def c (c (? . 0) q s32vector-ref)) c (? . 10)) ((c def c (c (? . 0) q s16vector->cpointer)) c (? . 7)) ((c def c (c (? . 0) q u16vector)) c (? . 16)) ((c form c (c (? . 3) q _ptr)) q (6084 . 6)) ((c def c (c (? . 2) q ctype-c->scheme)) c (? . 20)) ((c def c (c (? . 3) q ffi-obj-ref)) q (1334 . 5)) ((c def c (c (? . 3) q default-_string-type)) q (3452 . 4)) ((c def c (c (? . 0) q list->f32vector)) c (? . 8)) ((c def c (c (? . 3) q union-ptr)) q (9434 . 3)) ((c def c (c (? . 5) q com-object-eq?)) q (35510 . 4)) ((c def c (c (? . 5) q com-get-property)) q (36689 . 5)) ((c def c (c (? . 5) q com-object-clsid)) q (35338 . 3)) ((c def c (c (? . 9) q allocator)) q (27112 . 4)) ((c def c (c (? . 14) q cvector-ptr)) q (24035 . 3)) ((c def c (c (? . 0) q s32vector)) c (? . 10)) ((c def c (c (? . 0) q list->u32vector)) c (? . 11)) ((c def c (c (? . 3) q _gcable)) q (3829 . 3)) ((c form c (c (? . 38) q with-autorelease)) q (34250 . 2)) ((c def c (c (? . 2) q cpointer-tag)) q (13245 . 3)) ((c def c (c (? . 2) q memset)) q (12877 . 12)) ((c def c (c (? . 0) q s64vector-ref)) c (? . 12)) ((c def c (c (? . 5) q com-method-type)) q (35932 . 6)) ((c def c (c (? . 6) q class_addMethod)) q (32566 . 11)) ((c def c (c (? . 2) q ffi-obj-name)) c (? . 13)) ((c def c (c (? . 6) q _BOOL)) q (29828 . 2)) ((c form c (c (? . 0) q _f80vector)) q (23528 . 3)) ((c def c (c (? . 0) q u64vector->cpointer)) c (? . 15)) ((c def c (c (? . 0) q make-s8vector)) c (? . 19)) ((c def c (c (? . 0) q u8vector->list)) c (? . 23)) ((c def c (c (? . 3) q _enum)) q (9491 . 5)) ((c def c (c (? . 3) q _long)) c (? . 4)) ((c def c (c (? . 5) q com-set-property!)) q (37325 . 6)) ((c def c (c (? . 0) q f80vector-length)) c (? . 1)) ((c def c (c (? . 5) q com-get-property-type)) q (36474 . 6)) ((c def c (c (? . 0) q s32vector?)) c (? . 10)) ((c form c (c (? . 0) q _s64vector)) q (20436 . 3)) ((c def c (c (? . 3) q union?)) q (9176 . 3)) ((c form c (c (? . 14) q _cvector)) q (23576 . 3)) ((c def c (c (? . 3) q _sllong)) c (? . 4)) ((c def c (c (? . 0) q u64vector-length)) c (? . 15)) ((c def c (c (? . 0) q u16vector?)) c (? . 16)) ((c def c (c (? . 3) q _cprocedure)) q (3889 . 21)) ((c def c (c (? . 2) q prop:cpointer)) q (14625 . 2)) ((c form c (c (? . 0) q _u32vector)) q (19465 . 3)) ((c def c (c (? . 32) q make-not-available)) q (26976 . 3)) ((c def c (c (? . 5) q com-events)) q (37513 . 3)) ((c def c (c (? . 3) q _or-null)) q (3768 . 3)) ((c def c (c (? . 2) q _double*)) c (? . 17)) ((c def c (c (? . 3) q _cpointer)) c (? . 36)) ((c def c (c (? . 2) q cpointer-gcable?)) q (10234 . 3)) ((c def c (c (? . 5) q com-enumeration-to-list)) q (38428 . 3)) ((c def c (c (? . 0) q u64vector-set!)) c (? . 15)) ((c def c (c (? . 5) q guid=?)) q (34675 . 4)) ((c def c (c (? . 18) q end-atomic)) q (28962 . 2)) ((c def c (c (? . 0) q f80vector->cpointer)) c (? . 1)) ((c def c (c (? . 0) q make-u32vector)) c (? . 11)) ((c def c (c (? . 22) q com-all-coclasses)) q (39187 . 2)) ((c def c (c (? . 0) q f80vector)) c (? . 1)) ((c def c (c (? . 6) q objc-is-a?)) q (31424 . 4)) ((c form c (c (? . 5) q _hfun)) q (40581 . 5)) ((c def c (c (? . 0) q f64vector-ref)) c (? . 21)) ((c def c (c (? . 3) q _bytes/eof)) q (3580 . 2)) ((c def c (c (? . 0) q s32vector-set!)) c (? . 10)) ((c def c (c (? . 2) q malloc)) q (13401 . 16)) ((c def c (c (? . 5) q SysAllocStringLen)) q (41376 . 4)) ((c def c (c (? . 6) q make-objc_super)) q (34006 . 4)) ((c def c (c (? . 2) q ptr-add!)) q (10452 . 5)) ((c def c (c (? . 0) q u64vector-ref)) c (? . 15)) ((c def c (c (? . 0) q s8vector)) c (? . 19)) ((c def c (c (? . 0) q make-s16vector)) c (? . 7)) ((c def c (c (? . 2) q _string/ucs-4)) q (3145 . 2)) ((c def c (c (? . 2) q ctype-basetype)) c (? . 20)) ((c def c (c (? . 0) q f64vector->list)) c (? . 21)) ((c def c (c (? . 6) q objc-subclass?)) q (31506 . 4)) ((c def c (c (? . 3) q ctype->layout)) q (1947 . 4)) ((c def c (c (? . 5) q com-event-type)) q (37617 . 5)) ((c def c (c (? . 5) q string->clsid)) q (34496 . 3)) ((c def c (c (? . 5) q type-described-value)) q (39019 . 3)) ((c def c (c (? . 0) q s16vector-set!)) c (? . 7)) ((c def c (c (? . 5) q com-object-type)) q (35668 . 3)) ((c def c (c (? . 0) q list->f80vector)) c (? . 1)) ((c def c (c (? . 2) q _string/utf-16)) q (3176 . 2)) ((c def c (c (? . 0) q make-u64vector)) c (? . 15)) ((c def c (c (? . 37) q register-custodian-shutdown)) q (27676 . 11)) ((c def c (c (? . 3) q cpointer-has-tag?)) c (? . 30)) ((c def c (c (? . 5) q _HRESULT)) q (41217 . 2)) ((c form c (c (? . 6) q import-class)) q (30218 . 2)) ((c def c (c (? . 0) q s8vector->list)) c (? . 19)) ((c def c (c (? . 3) q vector->cblock)) q (42277 . 4)) ((c def c (c (? . 28) q _file/rw)) q (42098 . 2)) ((c def c (c (? . 22) q clsid->coclass)) q (39364 . 3)) ((c def c (c (? . 5) q com-release)) q (35158 . 3)) ((c def c (c (? . 5) q guid?)) q (34282 . 3)) ((c def c (c (? . 0) q list->f64vector)) c (? . 21)) ((c def c (c (? . 3) q _ubyte)) c (? . 35)) ((c def c (c (? . 6) q _SEL)) q (29806 . 2)) ((c def c (c (? . 2) q _fixint)) c (? . 41)) ((c def c (c (? . 0) q make-u8vector)) c (? . 23)) ((c def c (c (? . 5) q QueryInterface)) q (39705 . 7)) ((c def c (c (? . 2) q make-sized-byte-string)) q (14499 . 4)) ((c def c (c (? . 6) q objc-set-class!)) q (31661 . 4)) ((c def c (c (? . 5) q current-hfun-retry-delay)) q (40959 . 4)) ((c def c (c (? . 5) q SysFreeString)) q (41313 . 3)) ((c def c (c (? . 2) q saved-errno)) q (42509 . 4)) ((c def c (c (? . 5) q com-create-instance)) q (34965 . 4)) ((c def c (c (? . 0) q u64vector->list)) c (? . 15)) ((c def c (c (? . 5) q HRESULT-retry?)) q (41082 . 3)) ((c def c (c (? . 18) q call-as-atomic)) q (29086 . 3)) ((c def c (c (? . 0) q s64vector->cpointer)) c (? . 12)) ((c def c (c (? . 5) q com-get-active-object)) q (35222 . 3)) ((c def c (c (? . 3) q _uintptr)) c (? . 4)) ((c def c (c (? . 3) q _intptr)) c (? . 4)) ((c def c (c (? . 0) q f64vector?)) c (? . 21)) ((c def c (c (? . 3) q make-c-parameter)) q (1030 . 6)) ((c def c (c (? . 0) q s8vector-ref)) c (? . 19)) ((c def c (c (? . 3) q _sint16)) c (? . 24)) ((c def c (c (? . 3) q function-ptr)) q (5880 . 4)) ((c def c (c (? . 2) q ffi-obj)) q (43105 . 4)) ((c def c (c (? . 3) q _ssize)) c (? . 26)) ((c def c (c (? . 3) q _list-struct)) q (6617 . 10)) ((c def c (c (? . 0) q s64vector->list)) c (? . 12)) ((c form c (c (? . 5) q _wfun)) q (40391 . 3)) ((c def c (c (? . 3) q array-length)) q (8445 . 3)) ((c def c (c (? . 5) q com-object-get-iunknown)) q (38504 . 3)) ((c def c (c (? . 2) q _uint32)) c (? . 24)) ((c def c (c (? . 5) q com-type=?)) q (35740 . 4)) ((c def c (c (? . 3) q _slong)) c (? . 4)) ((c def c (c (? . 2) q _path)) q (3208 . 2)) ((c def c (c (? . 2) q make-union-type)) q (9041 . 3)) ((c def c (c (? . 3) q _string*/locale)) c (? . 25)) ((c def c (c (? . 2) q flvector->cpointer)) q (42432 . 3)) ((c def c (c (? . 0) q f32vector-length)) c (? . 8)) ((c def c (c (? . 2) q ctype?)) q (1738 . 3)) ((q def ((lib "ffi/unsafe/nsstring.rkt") _NSString)) q (34149 . 2)) ((c def c (c (? . 0) q u8vector-length)) c (? . 23)) ((c def c (c (? . 3) q _string*/latin-1)) c (? . 25)) ((c def c (c (? . 5) q com-set-properties)) q (36986 . 3)) ((c def c (c (? . 40) q try-atomic)) q (29347 . 9)) ((c def c (c (? . 0) q u8vector-ref)) c (? . 23)) ((c form c (c (? . 5) q define-com-interface)) q (39432 . 8)) ((c def c (c (? . 6) q object_getInstanceVariable)) q (33282 . 4)) ((c def c (c (? . 14) q cvector-length)) q (23883 . 3)) ((c form c (c (? . 0) q _u64vector)) q (21316 . 3)) ((c def c (c (? . 14) q cvector->list)) q (24328 . 3)) ((c def c (c (? . 2) q cpointer?)) q (9801 . 3)) ((c def c (c (? . 0) q u16vector->cpointer)) c (? . 16)) ((c def c (c (? . 5) q com-methods)) q (35827 . 3)) ((c form c (c (? . 3) q define-fun-syntax)) q (6025 . 2)) ((c def c (c (? . 2) q memcpy)) q (12113 . 24)) ((c def c (c (? . 6) q objc_lookUpClass)) q (32034 . 3)) ((c def c (c (? . 3) q _uintmax)) c (? . 26)) ((c def c (c (? . 9) q deallocator)) q (27230 . 4)) ((c def c (c (? . 0) q s16vector->list)) c (? . 7)) ((c def c (c (? . 2) q make-cstruct-type)) q (6400 . 5)) ((c form c (c (? . 0) q _s32vector)) q (18636 . 3)) ((c def c (c (? . 6) q _objc_super)) q (34098 . 2)) ((c form c (c (? . 6) q define-objc-mixin)) q (31087 . 6)) ((c def c (c (? . 0) q f32vector->list)) c (? . 8)) ((c def c (c (? . 6) q objc_msgSend/typed)) q (33531 . 6)) ((c def c (c (? . 3) q _racket)) q (3691 . 2)) ((c def c (c (? . 5) q com-enumerate-to-list)) q (38354 . 3)) ((c form c (c (? . 6) q define-objc-class)) q (30298 . 25)) ((c def c (c (? . 3) q get-ffi-obj)) q (598 . 6)) ((c def c (c (? . 3) q cblock->vector)) q (42960 . 5)) ((c def c (c (? . 0) q u32vector->list)) c (? . 11)) ((c def c (c (? . 3) q _string/eof)) q (3608 . 2)) ((c def c (c (? . 0) q u32vector-set!)) c (? . 11)) ((c def c (c (? . 14) q list->cvector)) q (24393 . 4)) ((c def c (c (? . 3) q ffi-lib)) q (54 . 11)) ((c def c (c (? . 2) q _symbol)) q (3231 . 2)) ((c def c (c (? . 2) q end-stubborn-change)) q (14174 . 3)) ((c form c (c (? . 0) q _f64vector)) q (22774 . 3)) ((c def c (c (? . 2) q _gcpointer)) q (3663 . 2)) ((c def c (c (? . 6) q objc_allocateClassPair)) q (32245 . 5)) ((c form c (c (? . 3) q define-cstruct)) q (7098 . 21)) ((c def c (c (? . 5) q com-object-set-clsid!)) q (35408 . 4)) ((c def c (c (? . 9) q retainer)) q (27499 . 5)) ((c def c (c (? . 14) q cvector?)) q (23829 . 3)) ((c def c (c (? . 6) q object_getClass)) q (32437 . 3)) ((c def c (c (? . 0) q u8vector-set!)) c (? . 23)) ((c def c (c (? . 0) q f64vector->cpointer)) c (? . 21)) ((c def c (c (? . 18) q in-atomic-mode?)) q (29223 . 2)) ((c def c (c (? . 3) q _string/utf-8)) c (? . 27)) ((c form c (c (? . 6) q set-ivar!)) q (31344 . 2)) ((c form c (c (? . 3) q define-c)) q (1291 . 2)) ((c def c (c (? . 0) q list->u16vector)) c (? . 16)) ((c def c (c (? . 5) q com-invoke)) q (36154 . 5)) ((c form c (c (? . 5) q _mfun)) q (40486 . 3)) ((c def c (c (? . 6) q objc_registerClassPair)) q (32367 . 3)) ((c def c (c (? . 5) q com-iunknown?)) q (38673 . 3)) ((c def c (c (? . 2) q ptr-equal?)) q (9856 . 4)) ((c def c (c (? . 0) q u8vector)) c (? . 23)) ((c def c (c (? . 5) q string->guid)) q (34435 . 3)) ((c def c (c (? . 28) q _file/guard)) q (41912 . 4)) ((c def c (c (? . 0) q s64vector-set!)) c (? . 12)) ((c def c (c (? . 29) q win64?)) q (42124 . 2)) ((c def c (c (? . 3) q in-array)) q (8577 . 6)) ((c def c (c (? . 0) q u8vector->cpointer)) c (? . 23)) ((c def c (c (? . 2) q _void)) q (3122 . 2)) ((c def c (c (? . 5) q clsid->progid)) q (34819 . 3)) ((c def c (c (? . 14) q make-cvector)) q (23626 . 4)) ((c def c (c (? . 14) q cvector-ref)) q (24102 . 4)) ((c def c (c (? . 3) q _bitmask)) q (9676 . 4)) ((c def c (c (? . 2) q ffi-lib?)) q (0 . 3)) ((c def c (c (? . 0) q s8vector->cpointer)) c (? . 19)) ((c def c (c (? . 2) q ffi-callback)) q (44023 . 13)) ((c def c (c (? . 0) q u32vector-ref)) c (? . 11)) ((c def c (c (? . 18) q start-breakable-atomic)) q (28996 . 2)) ((c def c (c (? . 3) q _sint)) c (? . 4)) ((c form c (c (? . 6) q tell)) q (29896 . 9)) ((c def c (c (? . 0) q u16vector-ref)) c (? . 16)) ((c def c (c (? . 0) q list->u64vector)) c (? . 15)) ((c def c (c (? . 2) q set-ptr-offset!)) q (10306 . 5)) ((c def c (c (? . 2) q compiler-sizeof)) q (2054 . 3)) ((c def c (c (? . 5) q LOCALE_SYSTEM_DEFAULT)) q (41266 . 2)) ((c form c (c (? . 3) q ->)) q (6015 . 2)) ((c def c (c (? . 2) q make-ctype)) q (1545 . 5)) ((c def c (c (? . 3) q list->cblock)) q (42194 . 4)) ((c def c (c (? . 3) q array-ref)) q (8170 . 4)) ((c def c (c (? . 6) q objc-get-superclass)) q (31745 . 3)) ((c def c (c (? . 0) q s8vector-length)) c (? . 19)) ((c def c (c (? . 0) q make-u16vector)) c (? . 16)) ((c def c (c (? . 0) q u16vector->list)) c (? . 16)) ((c def c (c (? . 5) q _GUID-pointer)) q (41186 . 2)) ((c def c (c (? . 5) q com-unregister-event-callback)) q (38245 . 4)) ((c def c (c (? . 3) q array-set!)) q (8269 . 5)) ((c def c (c (? . 2) q _int64)) c (? . 24)) ((c def c (c (? . 0) q list->s32vector)) c (? . 10)) ((c form c (c (? . 0) q _u16vector)) q (17756 . 3)) ((c def c (c (? . 6) q object_setInstanceVariable)) q (33387 . 5)) ((c def c (c (? . 6) q objc-block)) q (31879 . 5)) ((c def c (c (? . 0) q s16vector?)) c (? . 7)) ((c def c (c (? . 3) q _string)) q (3427 . 2)) ((c def c (c (? . 6) q class_addIvar)) q (32904 . 11)) ((c def c (c (? . 2) q make-array-type)) q (7893 . 4)) ((c def c (c (? . 3) q _string/locale)) c (? . 27)) ((c def c (c (? . 0) q u8vector?)) c (? . 23)) ((c def c (c (? . 28) q _file/r)) q (42073 . 2)) ((q form ((lib "ffi/serialize-cstruct.rkt") define-serializable-cstruct)) q (25803 . 15)) ((c def c (c (? . 3) q _word)) c (? . 31)) ((c def c (c (? . 3) q cpointer-push-tag!)) c (? . 30)) ((c def c (c (? . 3) q _union)) q (9113 . 3)) ((c def c (c (? . 6) q NO)) q (29874 . 2)) ((c def c (c (? . 5) q _IUnknown-pointer)) q (41560 . 2)) ((c def c (c (? . 5) q type-describe)) q (38916 . 4)) ((c def c (c (? . 3) q _array/vector)) q (8923 . 4)) ((c def c (c (? . 6) q _Class)) q (29755 . 2)) ((c def c (c (? . 3) q _sword)) c (? . 31)) ((c def c (c (? . 14) q cvector)) q (23741 . 4)) ((c def c (c (? . 2) q _int32)) c (? . 24)) ((c def c (c (? . 5) q guid->string)) q (34618 . 3)) ((c form c (c (? . 5) q _hmfun)) q (40734 . 2)) ((c def c (c (? . 3) q _array/list)) q (8807 . 4)) ((c def c (c (? . 0) q u32vector)) c (? . 11)) ((c def c (c (? . 2) q ffi-call)) q (43608 . 13)) ((c def c (c (? . 3) q _uword)) c (? . 31)) ((c form c (c (? . 6) q super-tell)) q (31226 . 3)) ((c def c (c (? . 5) q com-object-get-idispatch)) q (38587 . 3)) ((c def c (c (? . 2) q _uint8)) c (? . 24)) ((c def c (c (? . 5) q _IUnknown_vt)) q (41595 . 2)) ((c def c (c (? . 2) q _double)) c (? . 17)) ((c def c (c (? . 2) q lookup-errno)) q (42622 . 3)) ((c def c (c (? . 0) q u32vector-length)) c (? . 11)) ((c def c (c (? . 5) q string->iid)) q (34559 . 3)) ((c form c (c (? . 3) q _fun)) q (5053 . 23)) ((c form c (c (? . 0) q _u8vector)) q (15335 . 3)) ((c def c (c (? . 3) q _ptrdiff)) c (? . 26)) ((c def c (c (? . 0) q make-f64vector)) c (? . 21)) ((c def c (c (? . 0) q u32vector?)) c (? . 11)) ((c def c (c (? . 3) q _uint)) c (? . 4)) ((c def c (c (? . 3) q _file)) q (3557 . 2)) ((c def c (c (? . 6) q objc-get-class)) q (31601 . 3)) ((c def c (c (? . 0) q u16vector-length)) c (? . 16)) ((c def c (c (? . 5) q iid?)) q (34385 . 3)) ((c def c (c (? . 5) q com-register-event-callback)) q (37923 . 9)) ((c def c (c (? . 5) q progid->clsid)) q (34750 . 3)) ((c def c (c (? . 5) q com-object?)) q (34898 . 3)) ((c def c (c (? . 2) q _fixnum)) c (? . 34)) ((c def c (c (? . 0) q f32vector-ref)) c (? . 8)) ((c def c (c (? . 6) q YES)) q (29851 . 2)) ((c def c (c (? . 2) q _bool)) q (3099 . 2)) ((c form c (c (? . 32) q provide-protected)) q (27066 . 2)) ((c def c (c (? . 2) q vector->cpointer)) q (42363 . 3)) ((c def c (c (? . 2) q ptr-offset)) q (10162 . 3)) ((c def c (c (? . 5) q IID_IUnknown)) q (41505 . 2)) ((c def c (c (? . 0) q s16vector-ref)) c (? . 7)) ((c def c (c (? . 0) q f32vector-set!)) c (? . 8)) ((c def c (c (? . 5) q com-type?)) q (35613 . 3)) ((c def c (c (? . 3) q _sint32)) c (? . 24)) ((c def c (c (? . 5) q com-omit?)) q (36307 . 3)) ((c def c (c (? . 0) q list->s64vector)) c (? . 12)) ((c def c (c (? . 3) q cblock->list)) q (42819 . 5)) ((c def c (c (? . 3) q _size)) c (? . 26)) ((c def c (c (? . 2) q ptr-add)) q (9955 . 5)) ((c def c (c (? . 22) q coclass->clsid)) q (39292 . 3)) ((c def c (c (? . 2) q ptr-set!)) c (? . 33)) ((c form c (c (? . 0) q _s16vector)) q (16952 . 3)) ((c def c (c (? . 0) q u16vector-set!)) c (? . 16)) ((c form c (c (? . 0) q _f32vector)) q (22045 . 3)) ((c def c (c (? . 0) q make-s64vector)) c (? . 12)) ((q form ((lib "ffi/objc.rkt") objc-unsafe!)) q (34127 . 2)) ((c def c (c (? . 2) q free-immobile-cell)) q (14313 . 3)) ((c def c (c (? . 0) q list->u8vector)) c (? . 23)) ((c def c (c (? . 0) q list->s16vector)) c (? . 7)) ((c form c (c (? . 3) q _vector)) q (6324 . 2)) ((c def c (c (? . 3) q _sint64)) c (? . 24)) ((c def c (c (? . 2) q ptr-ref)) c (? . 33)) ((c def c (c (? . 2) q _ufixnum)) c (? . 34)) ((c def c (c (? . 3) q _byte)) c (? . 35)) ((c def c (c (? . 5) q current-hfun-retry-count)) q (40804 . 4)) ((c form c (c (? . 6) q self)) q (31214 . 2)) ((c def c (c (? . 28) q security-guard-check-file)) q (41725 . 5)) ((c def c (c (? . 0) q f80vector?)) c (? . 1)) ((c def c (c (? . 0) q f32vector)) c (? . 8)) ((c form c (c (? . 0) q _s8vector)) q (16125 . 3)) ((c def c (c (? . 0) q s8vector?)) c (? . 19)) ((c form c (c (? . 3) q _bytes)) q (6364 . 3)) ((c def c (c (? . 5) q com-make-event-executor)) q (37862 . 2)) ((c def c (c (? . 0) q s16vector)) c (? . 7)) ((c def c (c (? . 2) q _fpointer)) q (3741 . 2)) ((c def c (c (? . 3) q _cpointer/null)) c (? . 36)) ((c def c (c (? . 5) q type-described-description)) q (39094 . 3)) ((c def c (c (? . 2) q ffi-callback?)) q (44497 . 3)) ((c def c (c (? . 6) q objc_getProtocol)) q (32108 . 3)) ((c def c (c (? . 22) q com-all-controls)) q (39240 . 2)) ((c def c (c (? . 3) q _sbyte)) c (? . 35)) ((c def c (c (? . 2) q ctype-scheme->c)) c (? . 20)) ((c def c (c (? . 37) q register-finalizer-and-custodian-shutdown)) q (28332 . 13)) ((c def c (c (? . 3) q _array)) q (8007 . 4)) ((c def c (c (? . 0) q f64vector)) c (? . 21)) ((c def c (c (? . 2) q offset-ptr?)) q (10095 . 3)) ((c def c (c (? . 5) q _GUID)) q (41163 . 2)) ((c def c (c (? . 0) q s8vector-set!)) c (? . 19)) ((c def c (c (? . 2) q ctype-sizeof)) c (? . 39)) ((c form c (c (? . 6) q tellv)) q (30154 . 3)) ((c form c (c (? . 6) q selector)) q (31395 . 2)) ((c def c (c (? . 0) q f64vector-length)) c (? . 21)) ((c def c (c (? . 3) q _sint8)) c (? . 24)) ((c def c (c (? . 0) q list->s8vector)) c (? . 19)) ((c def c (c (? . 5) q com-omit)) q (36282 . 2)) ((c def c (c (? . 0) q s32vector-length)) c (? . 10)) ((c def c (c (? . 3) q _llong)) c (? . 4)) ((c def c (c (? . 38) q call-with-autorelease)) q (34176 . 3)) ((c def c (c (? . 2) q _uint16)) c (? . 24)) ((c def c (c (? . 14) q make-cvector*)) q (24482 . 5)) ((c def c (c (? . 3) q _short)) c (? . 4)) ((c def c (c (? . 18) q end-breakable-atomic)) q (29042 . 2)) ((c def c (c (? . 2) q ctype-alignof)) c (? . 39)) ((c def c (c (? . 0) q u64vector?)) c (? . 15)) ((c def c (c (? . 2) q _int16)) c (? . 24)) ((c def c (c (? . 2) q set-cpointer-tag!)) q (13308 . 4)) ((c def c (c (? . 3) q _sshort)) c (? . 4)) ((c def c (c (? . 14) q cvector-set!)) q (24203 . 5)) ((c def c (c (? . 2) q memmove)) q (11341 . 24)) ((c def c (c (? . 14) q cvector-type)) q (23970 . 3)) ((c def c (c (? . 5) q type-described?)) q (38855 . 3)) ((c def c (c (? . 0) q f80vector->list)) c (? . 1)) ((c def c (c (? . 5) q type-description?)) q (38792 . 3)) ((c form c (c (? . 32) q define-ffi-definer)) q (26582 . 7)) ((c def c (c (? . 3) q set-ffi-obj!)) q (835 . 6)) ((c def c (c (? . 5) q com-get-properties)) q (36362 . 3)) ((c form c (c (? . 6) q import-protocol)) q (30255 . 2)) ((c def c (c (? . 0) q f64vector-set!)) c (? . 21)) ((c form c (c (? . 3) q _list)) q (6174 . 9)) ((c def c (c (? . 0) q s64vector-length)) c (? . 12)) ((c def c (c (? . 6) q _Protocol)) q (29779 . 2)) ((c def c (c (? . 5) q _LCID)) q (41243 . 2)) ((c def c (c (? . 3) q array-type)) q (8522 . 3)) ((c def c (c (? . 2) q ffi-obj?)) c (? . 13)) ((c def c (c (? . 0) q make-f80vector)) c (? . 1)) ((c def c (c (? . 5) q com-get-property*)) q (36857 . 5)) ((c def c (c (? . 0) q u64vector)) c (? . 15)) ((c def c (c (? . 0) q s32vector->list)) c (? . 10)) ((c def c (c (? . 3) q _int)) c (? . 4)) ((c def c (c (? . 0) q s64vector?)) c (? . 12)) ((c def c (c (? . 2) q _int8)) c (? . 24)) ((c def c (c (? . 0) q f32vector?)) c (? . 8)) ((c def c (c (? . 18) q call-as-nonatomic)) q (29153 . 3)) ((c def c (c (? . 3) q _intmax)) c (? . 26)) ((c def c (c (? . 3) q register-finalizer)) q (14384 . 4)) ((c def c (c (? . 3) q union-set!)) q (9321 . 5)) ((c form c (c (? . 6) q get-ivar)) q (31306 . 2)) ((c def c (c (? . 5) q Release)) q (40040 . 3)) ((c def c (c (? . 0) q make-f32vector)) c (? . 8)) ((c def c (c (? . 6) q _Ivar)) q (33508 . 2)) ((c def c (c (? . 40) q call-as-nonatomic-retry-point)) q (29265 . 3)) ((c def c (c (? . 3) q _ullong)) c (? . 4)) ((c def c (c (? . 6) q class_getSuperclass)) q (32498 . 3)) ((c def c (c (? . 3) q array-ptr)) q (8388 . 3)) ((c def c (c (? . 5) q com-idispatch?)) q (38732 . 3)) ((c def c (c (? . 5) q windows-error)) q (41625 . 4)) ((c def c (c (? . 0) q make-s32vector)) c (? . 10)) ((c form c (c (? . 3) q _?)) q (6074 . 2)) ((c def c (c (? . 2) q _uint64)) c (? . 24)) ((c def c (c (? . 5) q IID_NULL)) q (41481 . 2)) ((c def c (c (? . 5) q com-event-executor?)) q (37797 . 3)) ((c def c (c (? . 3) q union-ref)) q (9228 . 4)) ((c def c (c (? . 2) q _ufixint)) c (? . 41)) ((c def c (c (? . 3) q _ushort)) c (? . 4)) ((c def c (c (? . 2) q malloc-immobile-cell)) q (14246 . 3)) ((c def c (c (? . 3) q cpointer-predicate-procedure?)) q (25549 . 3)) ((c def c (c (? . 5) q clsid?)) q (34333 . 3)) ((c def c (c (? . 6) q objc_msgSendSuper/typed)) q (33703 . 9)) ((c def c (c (? . 6) q objc-dispose-class)) q (31813 . 3)) ((c def c (c (? . 37) q unregister-custodian-shutdown)) q (28162 . 5)) ((c def c (c (? . 0) q s32vector->cpointer)) c (? . 10))))
procedure
(ffi-lib? v) -> boolean?
  v : any/c
procedure
(ffi-lib  path                            
         [version                         
          #:get-lib-dirs get-lib-dirs     
          #:fail fail                     
          #:global? global?])         -> any
  path : (or/c path-string? #f)
  version : (or/c string? (listof (or/c string? #f)) #f) = #f
  get-lib-dirs : (-> (listof path?)) = get-lib-search-dirs
  fail : (or/c #f (-> any)) = #f
  global? : any/c = (eq? 'global (system-type 'so-mode))
procedure
(get-ffi-obj objname lib type [failure-thunk]) -> any
  objname : (or/c string? bytes? symbol?)
  lib : (or/c ffi-lib? path-string? #f)
  type : ctype?
  failure-thunk : (or/c (-> any) #f) = #f
procedure
(set-ffi-obj! objname lib type new) -> void?
  objname : (or/c string? bytes? symbol?)
  lib : (or/c ffi-lib? path-string? #f)
  type : ctype?
  new : any/c
procedure
(make-c-parameter objname lib type) -> (and/c (-> any)
                                              (any/c -> void?))
  objname : (or/c string? bytes? symbol?)
  lib : (or/c ffi-lib? path-string? #f)
  type : ctype?
syntax
(define-c id lib-expr type-expr)
procedure
(ffi-obj-ref objname lib [failure-thunk]) -> any
  objname : (or/c string? bytes? symbol?)
  lib : (or/c ffi-lib? path-string? #f)
  failure-thunk : (or/c (-> any) #f) = #f
procedure
(make-ctype type racket-to-c c-to-racket) -> ctype?
  type : ctype?
  racket-to-c : (or/c #f (any/c . -> . any))
  c-to-racket : (or/c #f (any/c . -> . any))
procedure
(ctype? v) -> boolean?
  v : any/c
procedure
(ctype-sizeof type) -> exact-nonnegative-integer?
  type : ctype?
(ctype-alignof type) -> exact-nonnegative-integer?
  type : ctype?
procedure
(ctype->layout type)
 -> (flat-rec-contract rep symbol? (listof rep))
  type : ctype?
procedure
(compiler-sizeof sym) -> exact-nonnegative-integer?
  sym : (or/c symbol? (listof symbol?))
value
_int8 : ctype?
_sint8 : ctype?
_uint8 : ctype?
_int16 : ctype?
_sint16 : ctype?
_uint16 : ctype?
_int32 : ctype?
_sint32 : ctype?
_uint32 : ctype?
_int64 : ctype?
_sint64 : ctype?
_uint64 : ctype?
value
_byte : ctype?
_sbyte : ctype?
_ubyte : ctype?
value
_word : ctype?
_sword : ctype?
_uword : ctype?
value
_short : ctype?
_sshort : ctype?
_ushort : ctype?
_int : ctype?
_sint : ctype?
_uint : ctype?
_long : ctype?
_slong : ctype?
_ulong : ctype?
_llong : ctype?
_sllong : ctype?
_ullong : ctype?
_intptr : ctype?
_sintptr : ctype?
_uintptr : ctype?
value
_size : ctype?
_ssize : ctype?
_ptrdiff : ctype?
_intmax : ctype?
_uintmax : ctype?
value
_fixnum : ctype?
_ufixnum : ctype?
value
_fixint : ctype?
_ufixint : ctype?
value
_float : ctype?
_double : ctype?
_double* : ctype?
value
_longdouble : ctype?
value
_stdbool : ctype?
value
_bool : ctype?
value
_void : ctype?
value
_string/ucs-4 : ctype?
value
_string/utf-16 : ctype?
value
_path : ctype?
value
_symbol : ctype?
value
_string/utf-8 : ctype?
_string/latin-1 : ctype?
_string/locale : ctype?
value
_string*/utf-8 : ctype?
_string*/latin-1 : ctype?
_string*/locale : ctype?
value
_string : ctype?
parameter
(default-_string-type) -> ctype?
(default-_string-type type) -> void?
  type : ctype?
value
_file : ctype?
value
_bytes/eof : ctype?
value
_string/eof : ctype?
value
_pointer : ctype?
value
_gcpointer : ctype?
value
_racket : ctype?
value
_scheme : ctype?
value
_fpointer : ctype?
procedure
(_or-null ctype) -> ctype?
  ctype : ctype?
procedure
(_gcable ctype) -> ctype?
  ctype : ctype?
procedure
(_cprocedure  input-types                                 
              output-type                                 
             [#:abi abi                                   
              #:atomic? atomic?                           
              #:async-apply async-apply                   
              #:lock-name lock-name                       
              #:in-original-place? in-original-place?     
              #:save-errno save-errno                     
              #:wrapper wrapper                           
              #:keep keep])                           -> any
  input-types : (list ctype?)
  output-type : ctype?
  abi : (or/c #f 'default 'stdcall 'sysv) = #f
  atomic? : any/c = #f
  async-apply : (or/c #f ((-> any/c) . -> . any/c) box?) = #f
  lock-name : (or/c string? #f) = #f
  in-original-place? : any/c = #f
  save-errno : (or/c #f 'posix 'windows) = #f
  wrapper : (or/c #f (procedure? . -> . procedure?)) = #f
  keep : (or/c boolean? box? (any/c . -> . any/c)) = #t
syntax
(_fun fun-option ... maybe-args type-spec ... -> type-spec
      maybe-wrapper)
 
   fun-option = #:abi abi-expr
              | #:save-errno save-errno-expr
              | #:keep keep-expr
              | #:atomic? atomic?-expr
              | #:async-apply async-apply-expr
              | #:lock-name lock-name-expr
              | #:in-original-place? in-original-place?-expr
              | #:retry (retry-id [arg-id init-expr])
                 
   maybe-args = 
              | formals ::
                 
    type-spec = type-expr
              | (id : type-expr)
              | (type-expr = value-expr)
              | (id : type-expr = value-expr)
                 
maybe-wrapper = 
              | -> output-expr
procedure
(function-ptr ptr-or-proc fun-type) -> cpointer?
  ptr-or-proc : (or cpointer? procedure?)
  fun-type : ctype?
syntax
->
syntax
(define-fun-syntax id transformer-expr)
syntax
_?
syntax
(_ptr mode type-expr)
 
mode = i
     | o
     | io
syntax
(_box type)
syntax
(_list mode type maybe-len)
 
     mode = i
          | o
          | io
             
maybe-len = 
          | len-expr
syntax
(_vector mode type maybe-len)
syntax
_bytes
(_bytes o len-expr)
procedure
(make-cstruct-type types [abi alignment]) -> ctype?
  types : (non-empty-listof ctype?)
  abi : (or/c #f 'default 'stdcall 'sysv) = #f
  alignment : (or/c #f 1 2 4 8 16) = #f
procedure
(_list-struct [#:alignment alignment          
               #:malloc-mode malloc-mode]     
               type ...+)                 -> ctype?
  alignment : (or/c #f 1 2 4 8 16) = #f
  malloc-mode : (one-of/c 'raw 'atomic 'nonatomic 'tagged
                           'atomic-interior 'interior
                           'stubborn 'uncollectable 'eternal)
              = 'atomic
  type : ctype?
syntax
(define-cstruct id/sup ([field-id type-expr field-option ...] ...)
  property ...)
 
      id/sup = _id
             | (_id _super-id)
                
field-option = #:offset offset-expr
                
    property = #:alignment alignment-expr
             | #:malloc-mode malloc-mode-expr
             | #:property prop-expr val-expr
             | #:no-equal
             | #:define-unsafe
 
  offset-expr : exact-integer?
  alignment-expr : (or/c #f 1 2 4 8 16)
  malloc-mode-expr : (one-of/c 'raw 'atomic 'nonatomic 'tagged
                               'atomic-interior 'interior
                               'stubborn 'uncollectable 'eternal)
  prop-expr : struct-type-property?
procedure
(make-array-type type count) -> ctype?
  type : ctype?
  count : exact-nonnegative-integer?
procedure
(_array type count ...+) -> ctype?
  type : ctype?
  count : exact-nonnegative-integer?
procedure
(array? v) -> boolean?
  v : any/c
procedure
(array-ref a i ...+) -> any/c
  a : array?
  i : exact-nonnegative-integer?
procedure
(array-set! a i ...+ v) -> void?
  a : array?
  i : exact-nonnegative-integer?
  v : any/c
procedure
(array-ptr a) -> cpointer?
  a : array?
procedure
(array-length a) -> exact-nonnegative-integer?
  a : array?
procedure
(array-type a) -> ctype?
  a : array?
procedure
(in-array a [start stop step]) -> sequence?
  a : array?
  start : exact-nonnegative-integer? = 0
  stop : (or/c exact-integer? #f) = #f
  step : (and/c exact-integer? (not/c zero?)) = 1
procedure
(_array/list type count ...+) -> ctype?
  type : ctype?
  count : exact-nonnegative-integer?
procedure
(_array/vector type count ...+) -> ctype?
  type : ctype?
  count : exact-nonnegative-integer?
procedure
(make-union-type type ...+) -> ctype?
  type : ctype?
procedure
(_union type ...+) -> ctype?
  type : ctype?
procedure
(union? v) -> boolean?
  v : any/c
procedure
(union-ref u i) -> any/c
  u : union?
  i : exact-nonnegative-integer?
procedure
(union-set! u i v) -> void?
  u : union?
  i : exact-nonnegative-integer?
  v : any/c
procedure
(union-ptr u) -> cpointer?
  u : array?
procedure
(_enum symbols [basetype #:unknown unknown]) -> ctype?
  symbols : list?
  basetype : ctype? = _ufixint
  unknown : any/c = (lambda (x) (error ....))
procedure
(_bitmask symbols [basetype]) -> ctype?
  symbols : (or symbol? list?)
  basetype : ctype? = _uint
procedure
(cpointer? v) -> boolean?
  v : any/c
procedure
(ptr-equal? cptr1 cptr2) -> boolean?
  cptr1 : cpointer?
  cptr2 : cpointer?
procedure
(ptr-add cptr offset [type]) -> cpointer?
  cptr : cpointer?
  offset : exact-integer?
  type : ctype? = _byte
procedure
(offset-ptr? cptr) -> boolean?
  cptr : cpointer?
procedure
(ptr-offset cptr) -> exact-integer?
  cptr : cpointer?
procedure
(cpointer-gcable? cptr) -> boolean?
  cptr : cpointer?
procedure
(set-ptr-offset! cptr offset [ctype]) -> void?
  cptr : cpointer?
  offset : exact-integer?
  ctype : ctype? = _byte
procedure
(ptr-add! cptr offset [ctype]) -> void?
  cptr : cpointer?
  offset : exact-integer?
  ctype : ctype? = _byte
procedure
(ptr-ref cptr type [offset]) -> any
  cptr : cpointer?
  type : ctype?
  offset : exact-nonnegative-integer? = 0
(ptr-ref cptr type abs-tag offset) -> any
  cptr : cpointer?
  type : ctype?
  abs-tag : (one-of/c 'abs)
  offset : exact-nonnegative-integer?
(ptr-set! cptr type val) -> void?
  cptr : cpointer?
  type : ctype?
  val : any/c
(ptr-set! cptr type offset val) -> void?
  cptr : cpointer?
  type : ctype?
  offset : exact-nonnegative-integer?
  val : any/c
(ptr-set! cptr type abs-tag offset val) -> void?
  cptr : cpointer?
  type : ctype?
  abs-tag : (one-of/c 'abs)
  offset : exact-nonnegative-integer?
  val : any/c
procedure
(memmove cptr src-cptr count [type]) -> void?
  cptr : cpointer?
  src-cptr : cpointer?
  count : exact-nonnegative-integer?
  type : ctype? = _byte
(memmove cptr offset src-cptr count [type]) -> void?
  cptr : cpointer?
  offset : exact-integer?
  src-cptr : cpointer?
  count : exact-nonnegative-integer?
  type : ctype? = _byte
(memmove  cptr           
          offset         
          src-cptr       
          src-offset     
          count          
         [type])     -> void?
  cptr : cpointer?
  offset : exact-integer?
  src-cptr : cpointer?
  src-offset : exact-integer?
  count : exact-nonnegative-integer?
  type : ctype? = _byte
procedure
(memcpy cptr src-cptr count [type]) -> void?
  cptr : cpointer?
  src-cptr : cpointer?
  count : exact-nonnegative-integer?
  type : ctype? = _byte
(memcpy cptr offset src-cptr count [type]) -> void?
  cptr : cpointer?
  offset : exact-integer?
  src-cptr : cpointer?
  count : exact-nonnegative-integer?
  type : ctype? = _byte
(memcpy  cptr           
         offset         
         src-cptr       
         src-offset     
         count          
        [type])     -> void?
  cptr : cpointer?
  offset : exact-integer?
  src-cptr : cpointer?
  src-offset : exact-integer?
  count : exact-nonnegative-integer?
  type : ctype? = _byte
procedure
(memset cptr byte count [type]) -> void?
  cptr : cpointer?
  byte : byte?
  count : exact-nonnegative-integer?
  type : ctype? = _byte
(memset cptr offset byte count [type]) -> void?
  cptr : cpointer?
  offset : exact-integer?
  byte : byte?
  count : exact-nonnegative-integer?
  type : ctype? = _byte
procedure
(cpointer-tag cptr) -> any
  cptr : cpointer?
procedure
(set-cpointer-tag! cptr tag) -> void?
  cptr : cpointer?
  tag : any/c
procedure
(malloc  bytes-or-type     
        [type-or-bytes     
         cptr              
         mode              
         fail-mode])   -> cpointer?
  bytes-or-type : (or/c (and/c exact-nonnegative-integer? fixnum?)
                        ctype?)
  type-or-bytes : (or/c (and/c exact-nonnegative-integer? fixnum?)
                        ctype?)
                = absent
  cptr : cpointer? = absent
  mode : (one-of/c 'raw 'atomic 'nonatomic 'tagged    = absent
                   'atomic-interior 'interior
                   'stubborn 'uncollectable 'eternal)
  fail-mode : (one-of/c 'failok) = absent
procedure
(free cptr) -> void
  cptr : cpointer?
procedure
(end-stubborn-change cptr) -> void?
  cptr : cpointer?
procedure
(malloc-immobile-cell v) -> cpointer?
  v : any/c
procedure
(free-immobile-cell cptr) -> void?
  cptr : cpointer?
procedure
(register-finalizer obj finalizer) -> void?
  obj : any/c
  finalizer : (any/c . -> . any)
procedure
(make-sized-byte-string cptr length) -> bytes?
  cptr : cpointer?
  length : exact-nonnegative-integer?
value
prop:cpointer : struct-type-property?
procedure
(make-u8vector len) -> u8vector?
  len : exact-nonnegative-integer?
(u8vector val ...) -> u8vector?
  val : byte?
(u8vector? v) -> boolean?
  v : any/c
(u8vector-length vec) -> exact-nonnegative-integer?
  vec : u8vector?
(u8vector-ref vec k) -> byte?
  vec : u8vector?
  k : exact-nonnegative-integer?
(u8vector-set! vec k val) -> void?
  vec : u8vector?
  k : exact-nonnegative-integer?
  val : byte?
(list->u8vector lst) -> u8vector?
  lst : (listof byte?)
(u8vector->list vec) -> (listof byte?)
  vec : u8vector?
(u8vector->cpointer vec) -> cpointer?
  vec : u8vector?
syntax
(_u8vector mode maybe-len)
_u8vector
procedure
(make-s8vector len) -> s8vector?
  len : exact-nonnegative-integer?
(s8vector val ...) -> s8vector?
  val : (integer-in -128 127)
(s8vector? v) -> boolean?
  v : any/c
(s8vector-length vec) -> exact-nonnegative-integer?
  vec : s8vector?
(s8vector-ref vec k) -> (integer-in -128 127)
  vec : s8vector?
  k : exact-nonnegative-integer?
(s8vector-set! vec k val) -> void?
  vec : s8vector?
  k : exact-nonnegative-integer?
  val : (integer-in -128 127)
(list->s8vector lst) -> s8vector?
  lst : (listof (integer-in -128 127))
(s8vector->list vec) -> (listof (integer-in -128 127))
  vec : s8vector?
(s8vector->cpointer vec) -> cpointer?
  vec : s8vector?
syntax
(_s8vector mode maybe-len)
_s8vector
procedure
(make-s16vector len) -> s16vector?
  len : exact-nonnegative-integer?
(s16vector val ...) -> s16vector?
  val : (integer-in -32768 32767)
(s16vector? v) -> boolean?
  v : any/c
(s16vector-length vec) -> exact-nonnegative-integer?
  vec : s16vector?
(s16vector-ref vec k) -> (integer-in -32768 32767)
  vec : s16vector?
  k : exact-nonnegative-integer?
(s16vector-set! vec k val) -> void?
  vec : s16vector?
  k : exact-nonnegative-integer?
  val : (integer-in -32768 32767)
(list->s16vector lst) -> s16vector?
  lst : (listof (integer-in -32768 32767))
(s16vector->list vec) -> (listof (integer-in -32768 32767))
  vec : s16vector?
(s16vector->cpointer vec) -> cpointer?
  vec : s16vector?
syntax
(_s16vector mode maybe-len)
_s16vector
procedure
(make-u16vector len) -> u16vector?
  len : exact-nonnegative-integer?
(u16vector val ...) -> u16vector?
  val : (integer-in 0 65535)
(u16vector? v) -> boolean?
  v : any/c
(u16vector-length vec) -> exact-nonnegative-integer?
  vec : u16vector?
(u16vector-ref vec k) -> (integer-in 0 65535)
  vec : u16vector?
  k : exact-nonnegative-integer?
(u16vector-set! vec k val) -> void?
  vec : u16vector?
  k : exact-nonnegative-integer?
  val : (integer-in 0 65535)
(list->u16vector lst) -> u16vector?
  lst : (listof (integer-in 0 65535))
(u16vector->list vec) -> (listof (integer-in 0 65535))
  vec : u16vector?
(u16vector->cpointer vec) -> cpointer?
  vec : u16vector?
syntax
(_u16vector mode maybe-len)
_u16vector
procedure
(make-s32vector len) -> s32vector?
  len : exact-nonnegative-integer?
(s32vector val ...) -> s32vector?
  val : (integer-in -2147483648 2147483647)
(s32vector? v) -> boolean?
  v : any/c
(s32vector-length vec) -> exact-nonnegative-integer?
  vec : s32vector?
(s32vector-ref vec k) -> (integer-in -2147483648 2147483647)
  vec : s32vector?
  k : exact-nonnegative-integer?
(s32vector-set! vec k val) -> void?
  vec : s32vector?
  k : exact-nonnegative-integer?
  val : (integer-in -2147483648 2147483647)
(list->s32vector lst) -> s32vector?
  lst : (listof (integer-in -2147483648 2147483647))
(s32vector->list vec)
 -> (listof (integer-in -2147483648 2147483647))
  vec : s32vector?
(s32vector->cpointer vec) -> cpointer?
  vec : s32vector?
syntax
(_s32vector mode maybe-len)
_s32vector
procedure
(make-u32vector len) -> u32vector?
  len : exact-nonnegative-integer?
(u32vector val ...) -> u32vector?
  val : (integer-in 0 4294967295)
(u32vector? v) -> boolean?
  v : any/c
(u32vector-length vec) -> exact-nonnegative-integer?
  vec : u32vector?
(u32vector-ref vec k) -> (integer-in 0 4294967295)
  vec : u32vector?
  k : exact-nonnegative-integer?
(u32vector-set! vec k val) -> void?
  vec : u32vector?
  k : exact-nonnegative-integer?
  val : (integer-in 0 4294967295)
(list->u32vector lst) -> u32vector?
  lst : (listof (integer-in 0 4294967295))
(u32vector->list vec) -> (listof (integer-in 0 4294967295))
  vec : u32vector?
(u32vector->cpointer vec) -> cpointer?
  vec : u32vector?
syntax
(_u32vector mode maybe-len)
_u32vector
procedure
(make-s64vector len) -> s64vector?
  len : exact-nonnegative-integer?
(s64vector val ...) -> s64vector?
  val : (integer-in -9223372036854775808 9223372036854775807)
(s64vector? v) -> boolean?
  v : any/c
(s64vector-length vec) -> exact-nonnegative-integer?
  vec : s64vector?
(s64vector-ref vec k)
 -> (integer-in -9223372036854775808 9223372036854775807)
  vec : s64vector?
  k : exact-nonnegative-integer?
(s64vector-set! vec k val) -> void?
  vec : s64vector?
  k : exact-nonnegative-integer?
  val : (integer-in -9223372036854775808 9223372036854775807)
(list->s64vector lst) -> s64vector?
  lst : (listof (integer-in -9223372036854775808 9223372036854775807))
(s64vector->list vec)
 -> (listof (integer-in -9223372036854775808 9223372036854775807))
  vec : s64vector?
(s64vector->cpointer vec) -> cpointer?
  vec : s64vector?
syntax
(_s64vector mode maybe-len)
_s64vector
procedure
(make-u64vector len) -> u64vector?
  len : exact-nonnegative-integer?
(u64vector val ...) -> u64vector?
  val : (integer-in 0 18446744073709551615)
(u64vector? v) -> boolean?
  v : any/c
(u64vector-length vec) -> exact-nonnegative-integer?
  vec : u64vector?
(u64vector-ref vec k) -> (integer-in 0 18446744073709551615)
  vec : u64vector?
  k : exact-nonnegative-integer?
(u64vector-set! vec k val) -> void?
  vec : u64vector?
  k : exact-nonnegative-integer?
  val : (integer-in 0 18446744073709551615)
(list->u64vector lst) -> u64vector?
  lst : (listof (integer-in 0 18446744073709551615))
(u64vector->list vec)
 -> (listof (integer-in 0 18446744073709551615))
  vec : u64vector?
(u64vector->cpointer vec) -> cpointer?
  vec : u64vector?
syntax
(_u64vector mode maybe-len)
_u64vector
procedure
(make-f32vector len) -> f32vector?
  len : exact-nonnegative-integer?
(f32vector val ...) -> f32vector?
  val : real?
(f32vector? v) -> boolean?
  v : any/c
(f32vector-length vec) -> exact-nonnegative-integer?
  vec : f32vector?
(f32vector-ref vec k) -> real?
  vec : f32vector?
  k : exact-nonnegative-integer?
(f32vector-set! vec k val) -> void?
  vec : f32vector?
  k : exact-nonnegative-integer?
  val : real?
(list->f32vector lst) -> f32vector?
  lst : (listof real?)
(f32vector->list vec) -> (listof real?)
  vec : f32vector?
(f32vector->cpointer vec) -> cpointer?
  vec : f32vector?
syntax
(_f32vector mode maybe-len)
_f32vector
procedure
(make-f64vector len) -> f64vector?
  len : exact-nonnegative-integer?
(f64vector val ...) -> f64vector?
  val : real?
(f64vector? v) -> boolean?
  v : any/c
(f64vector-length vec) -> exact-nonnegative-integer?
  vec : f64vector?
(f64vector-ref vec k) -> real?
  vec : f64vector?
  k : exact-nonnegative-integer?
(f64vector-set! vec k val) -> void?
  vec : f64vector?
  k : exact-nonnegative-integer?
  val : real?
(list->f64vector lst) -> f64vector?
  lst : (listof real?)
(f64vector->list vec) -> (listof real?)
  vec : f64vector?
(f64vector->cpointer vec) -> cpointer?
  vec : f64vector?
syntax
(_f64vector mode maybe-len)
_f64vector
procedure
(make-f80vector len) -> f80vector?
  len : exact-nonnegative-integer?
(f80vector val ...) -> f80vector?
  val : extflonum?
(f80vector? v) -> boolean?
  v : any/c
(f80vector-length vec) -> exact-nonnegative-integer?
  vec : f80vector?
(f80vector-ref vec k) -> extflonum?
  vec : f80vector?
  k : exact-nonnegative-integer?
(f80vector-set! vec k val) -> void?
  vec : f80vector?
  k : exact-nonnegative-integer?
  val : extflonum?
(list->f80vector lst) -> f80vector?
  lst : (listof extflonum?)
(f80vector->list vec) -> (listof extflonum?)
  vec : f80vector?
(f80vector->cpointer vec) -> cpointer?
  vec : f80vector?
syntax
(_f80vector mode maybe-len)
_f80vector
syntax
(_cvector mode type maybe-len)
_cvector
procedure
(make-cvector type length) -> cvector?
  type : ctype?
  length : exact-nonnegative-integer?
procedure
(cvector type val ...) -> cvector?
  type : ctype?
  val : any/c
procedure
(cvector? v) -> boolean?
  v : any/c
procedure
(cvector-length cvec) -> exact-nonnegative-integer?
  cvec : cvector?
procedure
(cvector-type cvec) -> ctype?
  cvec : cvector?
procedure
(cvector-ptr cvec) -> cpointer?
  cvec : cvector?
procedure
(cvector-ref cvec k) -> any
  cvec : cvector?
  k : exact-nonnegative-integer?
procedure
(cvector-set! cvec k val) -> void?
  cvec : cvector?
  k : exact-nonnegative-integer?
  val : any
procedure
(cvector->list cvec) -> list?
  cvec : cvector?
procedure
(list->cvector lst type) -> cvector?
  lst : list?
  type : ctype?
procedure
(make-cvector* cptr type length) -> cvector?
  cptr : any/c
  type : ctype?
  length : exact-nonnegative-integer?
procedure
(_cpointer  tag               
           [ptr-type          
            racket-to-c       
            c-to-racket]) -> ctype
  tag : any/c
  ptr-type : (or/c ctype? #f) = _pointer
  racket-to-c : (or/c (any/c . -> . any/c) #f) = values
  c-to-racket : (or/c (any/c . -> . any/c) #f) = values
(_cpointer/null  tag               
                [ptr-type          
                 racket-to-c       
                 c-to-racket]) -> ctype
  tag : any/c
  ptr-type : (or/c ctype? #f) = _pointer
  racket-to-c : (or/c (any/c . -> . any/c) #f) = values
  c-to-racket : (or/c (any/c . -> . any/c) #f) = values
syntax
(define-cpointer-type _id)
(define-cpointer-type _id ptr-type-expr)
(define-cpointer-type _id ptr-type-expr
                      racket-to-c-expr c-to-racket-expr)
procedure
(cpointer-predicate-procedure? v) -> boolean?
  v : any/c
procedure
(cpointer-has-tag? cptr tag) -> boolean?
  cptr : cpointer?
  tag : any/c
(cpointer-push-tag! cptr tag) -> void
  cptr : cpointer?
  tag : any/c
syntax
(define-serializable-cstruct _id ([field-id type-expr] ...)
                             property ...)
 
property = #:alignment alignment-expr
         | #:malloc-mode malloc-mode-expr
         | #:serialize-inplace
         | #:deserialize-inplace
         | #:version vers
         | #:other-versions ([other-vers deserialize-chain-expr
                                         convert-proc-expr
                                         unconvert-proc-expr
                                         cycle-convert-proc-expr]
                              ...)
         | #:property prop-expr val-expr
syntax
(define-ffi-definer define-id ffi-lib-expr
  option ...)
 
option = #:provide provide-id
       | #:define core-define-id
       | #:default-make-fail default-make-fail-expr

(define-id id type-expr
  bind-option ...)
 
bind-option = #:c-id c-id
            | #:wrap wrap-expr
            | #:make-fail make-fail-expr
            | #:fail fail-expr
procedure
(make-not-available name) -> (#:rest list? -> any/c)
  name : symbol?
syntax
(provide-protected provide-spec ...)
procedure
((allocator dealloc) alloc) -> procedure?
  dealloc : (any/c . -> . any)
  alloc : procedure?
procedure
((deallocator [get-arg]) dealloc) -> procedure?
  get-arg : (list? . -> . any/c) = car
  dealloc : procedure?
procedure
((releaser [get-arg]) dealloc) -> procedure?
  get-arg : (list? . -> . any/c) = car
  dealloc : procedure?
procedure
((retainer release [get-arg]) retain) -> procedure?
  release : (any/c . -> . any)
  get-arg : (list? . -> . any/c) = car
  retain : procedure?
procedure
(register-custodian-shutdown  v                       
                              callback                
                             [custodian               
                              #:at-exit? at-exit?     
                              #:weak? weak?])     -> cpointer?
  v : any/c
  callback : (any/c . -> . any)
  custodian : custodian? = (current-custodian)
  at-exit? : any/c = #f
  weak? : any/c = #f
procedure
(unregister-custodian-shutdown v                 
                               registration) -> void?
  v : any/c
  registration : _cpointer
procedure
(register-finalizer-and-custodian-shutdown                      
                                            v                   
                                            callback            
                                           [custodian           
                                            #:at-exit? at-exit? 
                                            #:weak? weak?])     
 -> void?
  v : any/c
  callback : (any/c . -> . any)
  custodian : custodian? = (current-custodian)
  at-exit? : any/c = #f
  weak? : any/c = #f
procedure
(start-atomic) -> void?
procedure
(end-atomic) -> void?
procedure
(start-breakable-atomic) -> void?
procedure
(end-breakable-atomic) -> void?
procedure
(call-as-atomic thunk) -> any
  thunk : (-> any)
procedure
(call-as-nonatomic thunk) -> any
  thunk : (-> any)
procedure
(in-atomic-mode?) -> boolean?
procedure
(call-as-nonatomic-retry-point thunk) -> any
  thunk : (-> any)
procedure
(try-atomic  thunk                                 
             default-val                           
            [#:should-give-up? give-up-proc        
             #:keep-in-order? keep-in-order?]) -> any
  thunk : (-> any)
  default-val : any/c
  give-up-proc : (-> any/c) = run-200-milliseconds
  keep-in-order? : any/c = #t
value
_id : ctype?
value
_Class : ctype?
value
_Protocol : ctype?
value
_SEL : ctype?
value
_BOOL : ctype?
value
YES : boolean?
value
NO : boolean?
syntax
(tell result-type obj-expr method-id)
(tell result-type obj-expr arg ...)
 
result-type = 
            | #:type ctype-expr
               
        arg = method-id arg-expr
            | method-id #:type ctype-expr arg-expr
syntax
(tellv obj-expr method-id)
(tellv obj-expr arg ...)
syntax
(import-class class-id ...)
syntax
(import-protocol protocol-id ...)
syntax
(define-objc-class class-id superclass-expr
  maybe-mixins
  maybe-protocols
  [field-id ...]
  method ...)
 
   maybe-mixins = 
                | #:mixins (mixin-expr ...)
                   
maybe-protocols = 
                | #:protocols (protocol-expr ...)
                   
         method = (mode maybe-async result-ctype-expr (method-id) body ...+)
                | (mode maybe-async result-ctype-expr (arg ...+) body ...+)
                   
           mode = +
                | -
                | +a
                | -a
                   
    maybe-async = 
                | #:async-apply async-apply-expr
                   
            arg = method-id [ctype-expr arg-id]
syntax
(define-objc-mixin (class-id superclass-id)
  maybe-mixins
  maybe-protocols
  [field-id ...]
  method ...)
syntax
self
syntax
(super-tell result-type method-id)
(super-tell result-type arg ...)
syntax
(get-ivar obj-expr field-id)
syntax
(set-ivar! obj-expr field-id value-expr)
syntax
(selector method-id)
procedure
(objc-is-a? obj cls) -> boolean?
  obj : _id
  cls : _Class
procedure
(objc-subclass? subcls cls) -> boolean?
  subcls : _Class
  cls : _Class
procedure
(objc-get-class obj) -> _Class
  obj : _id
procedure
(objc-set-class! obj cls) -> void?
  obj : _id
  cls : _Class
procedure
(objc-get-superclass cls) -> _Class
  cls : _Class
procedure
(objc-dispose-class cls) -> void?
  cls : _Class
procedure
(objc-block function-type? proc #:keep keep) -> cpointer?
  function-type? : ctype
  proc : procedure?
  keep : (box/c list?)
procedure
(objc_lookUpClass s) -> (or/c _Class #f)
  s : string?
procedure
(objc_getProtocol s) -> (or/c _Protocol #f)
  s : string?
procedure
(sel_registerName s) -> _SEL
  s : string?
procedure
(objc_allocateClassPair cls s extra) -> _Class
  cls : _Class
  s : string?
  extra : integer?
procedure
(objc_registerClassPair cls) -> void?
  cls : _Class
procedure
(object_getClass obj) -> _Class
  obj : _id
procedure
(class_getSuperclass cls) -> _Class
  cls : _Class
procedure
(class_addMethod cls                
                 sel                
                 imp                
                 type               
                 type-encoding) -> boolean?
  cls : _Class
  sel : _SEL
  imp : procedure?
  type : ctype?
  type-encoding : string?
procedure
(class_addIvar cls                
               name               
               size               
               log-alignment      
               type-encoding) -> boolean?
  cls : _Class
  name : string?
  size : exact-nonnegative-integer?
  log-alignment : exact-nonnegative-integer?
  type-encoding : string?
procedure
(object_getInstanceVariable obj name) -> _Ivar any/c
  obj : _id
  name : string?
procedure
(object_setInstanceVariable obj name val) -> _Ivar
  obj : _id
  name : string?
  val : any/c
value
_Ivar : ctype?
procedure
((objc_msgSend/typed types) obj sel arg) -> any/c
  types : (vector/c result-ctype arg-ctype ...)
  obj : _id
  sel : _SEL
  arg : any/c
procedure
((objc_msgSendSuper/typed types)     
                          super      
                          sel        
                          arg)   -> any/c
  types : (vector/c result-ctype arg-ctype ...)
  super : _objc_super
  sel : _SEL
  arg : any/c
procedure
(make-objc_super id super) -> _objc_super
  id : _id
  super : _Class
value
_objc_super : ctype?
syntax
(objc-unsafe!)
value
_NSString : ctype?
procedure
(call-with-autorelease thunk) -> any
  thunk : (-> any)
syntax
(with-autorelease expr)
procedure
(guid? v) -> boolean?
  v : any/c
procedure
(clsid? v) -> boolean?
  v : any/c
procedure
(iid? v) -> boolean?
  v : any/c
procedure
(string->guid str) -> guid?
  str : string?
procedure
(string->clsid str) -> clsid?
  str : string?
procedure
(string->iid str) -> iid?
  str : string?
procedure
(guid->string g) -> string?
  g : guid?
procedure
(guid=? g1 g2) -> boolean?
  g1 : guid?
  g2 : guid?
procedure
(progid->clsid progid) -> clsid?
  progid : string?
procedure
(clsid->progid clsid) -> (or/c string? #f)
  clsid : clsid?
procedure
(com-object? obj) -> boolean?
  obj : com-object?
procedure
(com-create-instance clsid-or-progid [where]) -> com-object?
  clsid-or-progid : (or/c clsid? string?)
  where : (or/c (one-of/c 'local 'remote) string?) = 'local
procedure
(com-release obj) -> void?
  obj : com-object?
procedure
(com-get-active-object clsid-or-progid) -> com-object?
  clsid-or-progid : (or/c clsid? string?)
procedure
(com-object-clsid obj) -> clsid?
  obj : com-object?
procedure
(com-object-set-clsid! obj clsid) -> void?
  obj : com-object?
  clsid : clsid?
procedure
(com-object-eq? obj1 obj2) -> boolean?
  obj1 : com-object?
  obj2 : com-object?
procedure
(com-type? v) -> boolean?
  v : any/c
procedure
(com-object-type obj) -> com-type?
  obj : com-object?
procedure
(com-type=? t1 t2) -> boolean?
  t1 : com-type?
  t2 : com-type?
procedure
(com-methods obj/type) -> (listof string?)
  obj/type : (or/c com-object? com-type?)
procedure
(com-method-type obj/type method-name)
 -> (list/c '-> (listof type-description?)
                type-description?)
  obj/type : (or/c com-object? com-type?)
  method-name : string?
procedure
(com-invoke obj method-name v ...) -> any/c
  obj : com-object?
  method-name : string?
  v : any/c
value
com-omit : any/c
procedure
(com-omit? v) -> boolean?
  v : any/c
procedure
(com-get-properties obj/type) -> (listof string?)
  obj/type : (or/c com-object? com-type?)
procedure
(com-get-property-type obj/type       
                       property-name) 
 -> (list/c '-> '() type-description?)
  obj/type : (or/c com-object? com-type?)
  property-name : string?
procedure
(com-get-property obj property ...+) -> any/c
  obj : com-object?
  property : (or/c string?
                   (cons/c string? list?))
procedure
(com-get-property* obj property v ...) -> any/c
  obj : com-object?
  property : string?
  v : any/c
procedure
(com-set-properties obj/type) -> (listof string?)
  obj/type : (or/c com-object? com-type?)
procedure
(com-set-property-type obj/type       
                       property-name) 
 -> (list/c '-> (list/c type-description?) 'void)
  obj/type : (or/c com-object? com-type?)
  property-name : string?
procedure
(com-set-property! obj property ...+ v) -> void?
  obj : com-object?
  property : (or/c string?
                   (cons/c string? list?))
  v : any/c
procedure
(com-events obj/type) -> (listof string?)
  obj/type : (or/c com-object? com-type?)
procedure
(com-event-type obj/type event-name)
 -> (list/c '-> (listof type-description?) 'void)
  obj/type : (or/c com-object? com-type?)
  event-name : string?
procedure
(com-event-executor? v) -> boolean?
  v : any/c
procedure
(com-make-event-executor) -> com-event-executor?
procedure
(com-register-event-callback obj            
                             name           
                             proc           
                             com-ev-ex) -> void?
  obj : com-object?
  name : string?
  proc : procedure?
  com-ev-ex : com-event-executor?
procedure
(com-unregister-event-callback obj name) -> void?
  obj : com-object?
  name : string?
procedure
(com-enumerate-to-list obj) -> list?
  obj : com-object?
procedure
(com-enumeration-to-list obj) -> list?
  obj : com-object?
procedure
(com-object-get-iunknown obj) -> com-iunkown?
  obj : com-object?
procedure
(com-object-get-idispatch obj) -> com-idispatch?
  obj : com-object?
procedure
(com-iunknown? v) -> boolean?
  v : any/c
procedure
(com-idispatch? v) -> boolean?
  v : any/c
procedure
(type-description? v) -> boolean?
  v : any/c
procedure
(type-described? v) -> boolean?
  v : any/c
procedure
(type-describe v desc) -> type-described?
  v : any/c
  desc : type-description?
procedure
(type-described-value td) -> any/c
  td : type-described?
procedure
(type-described-description td) -> type-description?
  td : type-described?
procedure
(com-all-coclasses) -> (listof string?)
procedure
(com-all-controls) -> (listof string?)
procedure
(coclass->clsid coclass) -> clsid?
  coclass : string?
procedure
(clsid->coclass clsid) -> string?
  clsid : clsid?
syntax
(define-com-interface (_id _super-id)
  ([method-id ctype-expr maybe-alloc-spec] ...))
 
maybe-alloc-spec = 
                 | #:release-with-function function-id
                 | #:release-with-method method-id
                 | #:releases
procedure
(QueryInterface iunknown               
                iid                    
                intf-pointer-type) -> (or/c cpointer? #f)
  iunknown : com-iunknown?
  iid : iid?
  intf-pointer-type : ctype?
procedure
(AddRef iunknown) -> exact-positive-integer?
  iunknown : com-iunknown?
procedure
(Release iunknown) -> exact-nonnegative-integer?
  iunknown : com-iunknown?
procedure
(make-com-object  iunknown                
                  clsid                   
                 [#:manage? manage?]) -> com-object?
  iunknown : com-iunknown?
  clsid : (or/c clsid? #f)
  manage? : any/c = #t
syntax
(_wfun fun-option ... maybe-args type-spec ... -> type-spec
   maybe-wrapper)
syntax
(_mfun fun-option ... maybe-args type-spec ... -> type-spec
   maybe-wrapper)
syntax
(_hfun fun-option ... type-spec ... -> id maybe-allow output-expr)
 
maybe-allow = 
            | #:allow [result-id allow?-expr]
syntax
(_hmfun fun-option ... type-spec ... -> id output-expr)
parameter
(current-hfun-retry-count) -> count
(current-hfun-retry-count exact-nonnegative-integer?) -> void?
  exact-nonnegative-integer? : count
parameter
(current-hfun-retry-delay) -> (>=/c 0.0)
(current-hfun-retry-delay secs) -> void?
  secs : (>=/c 0.0)
procedure
(HRESULT-retry? r) -> boolean?
  r : exact-nonnegative-integer?
value
_GUID : ctype?
value
_GUID-pointer : ctype?
value
_HRESULT : ctype?
value
_LCID : ctype?
value
LOCALE_SYSTEM_DEFAULT : exact-integer?
procedure
(SysFreeString str) -> void?
  str : _pointer
procedure
(SysAllocStringLen content len) -> cpointer?
  content : _pointer
  len : integer?
value
IID_NULL : iid?
value
IID_IUnknown : iid?
value
_IUnknown : ctype?
value
_IUnknown-pointer : ctype?
value
_IUnknown_vt : ctype?
procedure
(windows-error msg hresult) -> any
  msg : string?
  hresult : exact-integer?
procedure
(security-guard-check-file who path perms) -> void?
  who : symbol?
  path : path-string?
  perms : (listof (or/c 'read 'write 'execute 'delete 'exists))
procedure
(_file/guard perms [who]) -> ctype?
  perms : (listof (or/c 'read 'write 'execute 'delete 'exists))
  who : symbol? = '_file/guard
value
_file/r : ctype?
value
_file/rw : ctype?
value
win64? : boolean?
value
winapi : (or/c 'stdcall 'default)
procedure
(list->cblock lst type) -> any
  lst : list?
  type : ctype?
procedure
(vector->cblock vec type) -> any
  vec : vector?
  type : type?
procedure
(vector->cpointer vec) -> cpointer?
  vec : vector?
procedure
(flvector->cpointer flvec) -> cpointer?
  flvec : flvector?
procedure
(saved-errno) -> exact-integer?
(saved-errno new-value) -> void?
  new-value : exact-integer?
procedure
(lookup-errno sym) -> (or/c exact-integer? #f)
  sym : symbol?
procedure
(cast v from-type to-type) -> any/c
  v : any/c
  from-type : ctype?
  to-type : ctype?
procedure
(cblock->list cblock type length) -> list?
  cblock : any/c
  type : ctype?
  length : exact-nonnegative-integer?
procedure
(cblock->vector cblock type length) -> vector?
  cblock : any/c
  type : ctype?
  length : exact-nonnegative-integer?
procedure
(ffi-obj objname lib) -> ffi-obj?
  objname : (or/c string? bytes? symbol?)
  lib : (or/c ffi-lib? path-string? #f)
procedure
(ffi-obj? x) -> boolean?
  x : any/c
(ffi-obj-lib obj) -> ffi-lib?
  obj : ffi-obj?
(ffi-obj-name obj) -> string?
  obj : ffi-obj?
procedure
(ctype-basetype type) -> (or/c ctype? #f)
  type : ctype?
(ctype-scheme->c type) -> procedure?
  type : ctype?
(ctype-c->scheme type) -> procedure?
  type : ctype?
procedure
(ffi-call  ptr              
           in-types         
           out-type         
          [abi]             
           save-errno?      
           orig-place?) -> procedure?
  ptr : cpointer?
  in-types : (listof ctype?)
  out-type : ctype?
  abi : (or/c #f 'default 'stdcall 'sysv) = #f
  save-errno? : any/c
  orig-place? : any/c
procedure
(ffi-callback  proc              
               in-types          
               out-type          
              [abi               
               atomic?           
               async-apply]) -> ffi-callback?
  proc : any/c
  in-types : any/c
  out-type : any/c
  abi : (or/c #f 'default 'stdcall 'sysv) = #f
  atomic? : any/c = #f
  async-apply : (or/c #f ((-> any) . -> . any)) = #f
procedure
(ffi-callback? x) -> boolean?
  x : any/c
