diff options
author | Matthias Benkard <code@mail.matthias.benkard.de> | 2008-02-15 21:46:57 +0100 |
---|---|---|
committer | Matthias Benkard <code@mail.matthias.benkard.de> | 2008-02-15 21:46:57 +0100 |
commit | 2bb2aff46342274f990903b273d4a2545f6f7f9f (patch) | |
tree | 857550066228dfee19fb35208c1eef61d17d487f /Lisp | |
parent | 996fa5e19c1ec8603b99a4ce29b85b7af7468a78 (diff) |
Class TAGGED-STRUCT: Recover TYPESPEC slot.
darcs-hash:aa7ba6f0790527c765455b9347bf8cba78d7186c
Diffstat (limited to 'Lisp')
-rw-r--r-- | Lisp/data-types.lisp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/Lisp/data-types.lisp b/Lisp/data-types.lisp index 91e10f3..5d8c22b 100644 --- a/Lisp/data-types.lisp +++ b/Lisp/data-types.lisp @@ -235,14 +235,19 @@ an __exception__, you can simply send it the `self' message. ;; FIXME: Document. (defclass foreign-struct (foreign-value) ((name :type (or null string) - :accessor struct-name + :accessor foreign-struct-name :initarg :name))) ;; The following are for private use only. (defclass opaque-struct (foreign-struct) ()) -(defclass tagged-struct (foreign-struct) ()) + +(defclass tagged-struct (foreign-struct) + ((typespec :reader foreign-value-typespec + :initarg :typespec))) + (defclass opaque-union (opaque-struct) ()) + (defclass tagged-union (tagged-struct) ()) @@ -251,11 +256,13 @@ an __exception__, you can simply send it the `self' message. ;; support passing them as arguments.) (defclass foreign-array (foreign-value) ((element-type :type symbol - :accessor tagged-array-element-type + :reader foreign-array-element-type :initarg :element-type) (length :type integer - :accessor tagged-array-length) - (typespec :accessor foreign-value-typespec))) + :reader foreign-array-length + :initarg :type) + (typespec :reader foreign-value-typespec + :initarg :typespec))) ;; FIXME: Document. |