From b4517249b210065bcbf398c0b2c11097dd5b5d58 Mon Sep 17 00:00:00 2001 From: Matthias Benkard Date: Mon, 4 Feb 2008 19:19:37 +0100 Subject: Add preliminary support for Objective-C slots. darcs-hash:7da372a879d14800683cb79a262e86a8037245fc --- Lisp/libobjcl.lisp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'Lisp/libobjcl.lisp') diff --git a/Lisp/libobjcl.lisp b/Lisp/libobjcl.lisp index bf166c4..4dff7ad 100644 --- a/Lisp/libobjcl.lisp +++ b/Lisp/libobjcl.lisp @@ -742,9 +742,14 @@ separating parts by hyphens works nicely in all of the `:INVERT`, (%objcl-slot-name slot)) (defun objcl-class-direct-slots (class) + (if (typep class 'objective-c-class) + (objcl-class-direct-slots/pointer (pointer-to class)) + nil)) + +(defun objcl-class-direct-slots/pointer (class-ptr) (with-foreign-objects ((count-ptr :unsigned-int) (element-size-ptr :unsigned-int)) - (let ((array-pointer (%objcl-class-direct-slots (pointer-to class) + (let ((array-pointer (%objcl-class-direct-slots class-ptr count-ptr element-size-ptr))) (unwind-protect -- cgit v1.2.3