ffi/unsafe/objc: more support for loading in unsupported contexts

This commit is contained in:
Matthew Flatt 2012-08-27 19:45:53 -06:00
parent cb95a99d68
commit 85b99de7b1

View File

@ -5,7 +5,7 @@
"atomic.rkt" "atomic.rkt"
"define.rkt") "define.rkt")
(define objc-lib (ffi-lib "libobjc" #:fail (lambda () #f))) (define objc-lib (ffi-lib "libobj" #:fail (lambda () #f)))
(define-ffi-definer define-objc objc-lib (define-ffi-definer define-objc objc-lib
#:provide provide-protected #:provide provide-protected
@ -211,7 +211,10 @@
#:fail (lambda () (lambda (name) #:fail (lambda () (lambda (name)
(cast (objc_lookUpClass name) _Class _Protocol)))) (cast (objc_lookUpClass name) _Class _Protocol))))
(define-objc sel_registerName (_fun _string -> _SEL)) (define-objc sel_registerName (_fun _string -> _SEL)
#:fail (lambda () (lambda (name)
;; Fake registration using interned symbols
(cast (string->symbol name) _racket _gcpointer))))
(define-objc objc_allocateClassPair (_fun _Class _string _long -> _Class) (define-objc objc_allocateClassPair (_fun _Class _string _long -> _Class)
#:fail (lambda () #f)) #:fail (lambda () #f))