summaryrefslogtreecommitdiff
path: root/Lisp/data-types.lisp
diff options
context:
space:
mode:
authorMatthias Benkard <code@mail.matthias.benkard.de>2008-03-05 15:58:27 +0100
committerMatthias Benkard <code@mail.matthias.benkard.de>2008-03-05 15:58:27 +0100
commit02d4f57b64333e94a4051e5299be20e0a600cfd1 (patch)
treef1293e127282f1a5d582b9923becc9c030bcc772 /Lisp/data-types.lisp
parent50acab3664ab433fe4d53a728097ea9132f6cf02 (diff)
Add new class FOREIGN-UNION.
darcs-hash:8f87776dce528cb17cf292df0c5aa410fe924247
Diffstat (limited to 'Lisp/data-types.lisp')
-rw-r--r--Lisp/data-types.lisp10
1 files changed, 6 insertions, 4 deletions
diff --git a/Lisp/data-types.lisp b/Lisp/data-types.lisp
index 1d460c9..ad464c7 100644
--- a/Lisp/data-types.lisp
+++ b/Lisp/data-types.lisp
@@ -256,6 +256,8 @@ an __exception__, you can simply send it the `self' message.
:accessor foreign-struct-name
:initarg :name)))
+(defclass foreign-union (foreign-struct) ())
+
;; The following are for private use only.
(defclass opaque-struct (foreign-struct) ())
@@ -264,9 +266,9 @@ an __exception__, you can simply send it the `self' message.
((typespec :reader foreign-value-typespec
:initarg :typespec)))
-(defclass opaque-union (opaque-struct) ())
+(defclass opaque-union (foreign-union opaque-struct) ())
-(defclass tagged-union (tagged-struct) ())
+(defclass tagged-union (foreign-union tagged-struct) ())
(defgeneric foreign-value-pointer (foreign-value)
@@ -292,7 +294,7 @@ behaviour if you need to.
## See also:
- __foreign-value-lisp-managed-p__, __foreign-value__, __foreign-struct__"))
+ __foreign-value-lisp-managed-p__, __foreign-value__"))
(defmethod foreign-value-pointer ((foreign-value foreign-value))
@@ -346,7 +348,7 @@ seems like an acceptable trade-off.
## See also:
- __foreign-value__, __foreign-struct__"))
+ __foreign-value__"))
(defmethod foreign-value-lisp-managed-p ((foreign-value foreign-value))