Smoke::t_class is now also used for classes not wrapped by Smoke & remove global-space part from enum symbols.
src/objects/stack.lisp
Wed Sep 9 15:22:32 CEST 2009 Tobias Rautenkranz <tobias@rautenkranz.ch>
* Smoke::t_class is now also used for classes not wrapped by Smoke & remove global-space part from enum symbols.
--- old-smoke/src/objects/stack.lisp 2014-10-30 08:10:24.000000000 +0100
+++ new-smoke/src/objects/stack.lisp 2014-10-30 08:10:24.000000000 +0100
@@ -105,13 +105,13 @@
"Returns the Lisp representation for STACK-ITEM of the basic C type TYPE."
(declare (optimize (speed 3)))
(ecase (type-id type)
- (0 (if-let ((translation (gethash (name type) *to-lisp-translations*)))
- (let ((pointer (foreign-slot-value stack-item 'smoke-stack-item
- 'voidp)))
- (prog1 (funcall (car translation) pointer)
- (when (stack-p type)
- (funcall (cdr translation) pointer))))
- (error "Do not know how to convert the type ~A to Lisp." type)))
+ ((0 13) (if-let ((translation (gethash (name type) *to-lisp-translations*)))
+ (let ((pointer (foreign-slot-value stack-item 'smoke-stack-item
+ 'voidp)))
+ (prog1 (funcall (car translation) pointer)
+ (when (stack-p type)
+ (funcall (cdr translation) pointer))))
+ (error "Do not know how to convert the type ~A to Lisp." type)))
(1 (foreign-slot-value stack-item 'smoke-stack-item 'bool))
(2 (code-char (foreign-slot-value stack-item 'smoke-stack-item 'char)))
(3 (code-char (foreign-slot-value stack-item 'smoke-stack-item 'uchar)))