summaryrefslogtreecommitdiff
path: root/Lisp/libobjcl.lisp
diff options
context:
space:
mode:
authorMatthias Benkard <code@mail.matthias.benkard.de>2008-02-07 22:16:58 +0100
committerMatthias Benkard <code@mail.matthias.benkard.de>2008-02-07 22:16:58 +0100
commit0659e7a29136823cba53c05fa94df2db29a3ddbc (patch)
tree1a72f3913b8f40519ae95db0c630181c15f44eac /Lisp/libobjcl.lisp
parent3f06b3a67a1d2ca8ef3eafffb4d67bd8b0ae47e8 (diff)
Objective-C layer: Add objcl_create_imp and assorted functions.
darcs-hash:586394a97ab02a3f8e258cd75c1230dff717a38e
Diffstat (limited to 'Lisp/libobjcl.lisp')
-rw-r--r--Lisp/libobjcl.lisp15
1 files changed, 15 insertions, 0 deletions
diff --git a/Lisp/libobjcl.lisp b/Lisp/libobjcl.lisp
index 07f88ac..fd575d2 100644
--- a/Lisp/libobjcl.lisp
+++ b/Lisp/libobjcl.lisp
@@ -121,6 +121,21 @@
(defcfun objcl-get-yes :long)
(defcfun objcl-get-no :long)
+(defcfun ("objcl_create_imp" %objcl-create-imp) :pointer
+ (callback :pointer)
+ (argc :int)
+ (return-typespec :string)
+ (arg-typespecs (:array :string)))
+
+(defcfun ("objcl_acquire_lock" %objcl-release-lock) :pointer
+ (lock :pointer))
+
+(defcfun ("objcl_release_lock" %objcl-acquire-lock) :pointer
+ (lock :pointer))
+
+(defcvar *objcl-current-exception-lock* :pointer)
+(defcvar *objcl-current-exception* :pointer)
+
(defun objcl-get-nil ()
;; %OBJCL-GET-NIL can return NIL for CLISP, which CFFI refuses to
;; accept as an argument to POINTER-EQ. This is weird.