summaryrefslogtreecommitdiff
path: root/Lisp/method-invocation.lisp
diff options
context:
space:
mode:
authorMatthias Benkard <code@mail.matthias.benkard.de>2007-08-04 15:18:12 +0200
committerMatthias Benkard <code@mail.matthias.benkard.de>2007-08-04 15:18:12 +0200
commit5cbcd439f32529596ef929a7def75bc054dfc3e4 (patch)
tree9d603af0d955e38e59e056920f827b076d2232bf /Lisp/method-invocation.lisp
parent4765624c39dffb085554b1459b3e80bcbf347791 (diff)
More file and directory layout refactoring.
darcs-hash:9efff3ff2e22c9d8a85f8fcc7fa4487937ddd62f
Diffstat (limited to 'Lisp/method-invocation.lisp')
-rw-r--r--Lisp/method-invocation.lisp34
1 files changed, 0 insertions, 34 deletions
diff --git a/Lisp/method-invocation.lisp b/Lisp/method-invocation.lisp
index ebd6fca..3cc927b 100644
--- a/Lisp/method-invocation.lisp
+++ b/Lisp/method-invocation.lisp
@@ -43,40 +43,6 @@
(dealloc-obj-data return-value))))
-;;; (@* "Data conversion")
-(defun lisp->obj-data (value)
- (let ((obj-data (foreign-alloc 'obj-data))
- (type-name (lisp-value->type-name value)))
- (with-foreign-slots ((type data) obj-data obj-data)
- (setf (foreign-slot-value data
- 'obj-data-union
- (type-name->slot-name type-name))
- (typecase value
- ((or objc-id objc-class objc-selector objc-exception)
- (pointer-to value))
- (string (foreign-string-alloc value))
- (otherwise value)))
- (setf type
- (foreign-string-alloc (type-name->type-id type-name))))
- obj-data))
-
-
-(defun obj-data->lisp (obj-data)
- (with-foreign-slots ((type data) obj-data obj-data)
- (let* ((type-name (type-id->type-name (foreign-string-to-lisp type)))
- (lisp-type (type-name->lisp-type type-name))
- (value (if (eq 'void type-name)
- (values)
- (foreign-slot-value data
- 'obj-data-union
- (type-name->slot-name type-name)))))
- (case lisp-type
- ((objc-id objc-class objc-selector objc-exception)
- (make-instance lisp-type :pointer value))
- ((string) (foreign-string-to-lisp value))
- (otherwise value)))))
-
-
;;; (@* "Helper functions")
(defun arglist-intersperse-types (arglist)
(mapcan #'(lambda (arg)