From 50785250d73abef4b10f6435249de64a924af7ef Mon Sep 17 00:00:00 2001 From: Matthias Benkard Date: Tue, 19 Feb 2008 15:30:01 +0100 Subject: Add function POINTER. darcs-hash:68f3e7d8ce27daf943059dab2663183de1f694c3 --- Lisp/libobjcl.lisp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'Lisp/libobjcl.lisp') diff --git a/Lisp/libobjcl.lisp b/Lisp/libobjcl.lisp index f68838c..0267f10 100644 --- a/Lisp/libobjcl.lisp +++ b/Lisp/libobjcl.lisp @@ -737,20 +737,24 @@ separating parts by hyphens works nicely in all of the `:INVERT`, (list (intern-selector-by-name (symbol-list->message-name selector-name))))) +(defun pointer (thing) + (etypecase thing + (c-pointer thing) + (c-pointer-wrapper (pointer-to thing)))) (defun object-is-class-p (obj) - (%objcl-object-is-class (pointer-to obj))) + (%objcl-object-is-class (pointer obj))) (defun object-is-meta-class-p (obj) - (%objcl-object-is-meta-class (pointer-to obj))) + (%objcl-object-is-meta-class (pointer obj))) (defun object-get-class (obj) (find-objc-class-by-name - (%objcl-class-name (%objcl-object-get-class (pointer-to obj))))) + (%objcl-class-name (%objcl-object-get-class (pointer obj))))) (defun object-get-meta-class (obj) (find-objc-meta-class-by-name - (%objcl-class-name (%objcl-object-get-class (pointer-to obj))))) + (%objcl-class-name (%objcl-object-get-class (pointer obj))))) (defun objcl-class-superclass/pointer (class-ptr) (let ((superclass-ptr (%objcl-class-superclass class-ptr))) -- cgit v1.2.3