[movitz-cvs] CVS movitz
ffjeld
ffjeld at common-lisp.net
Sun Apr 27 19:14:54 UTC 2008
Update of /project/movitz/cvsroot/movitz
In directory clnet:/tmp/cvs-serv29457
Modified Files:
compiler-types.lisp
Log Message:
Complex type.
--- /project/movitz/cvsroot/movitz/compiler-types.lisp 2006/11/08 08:57:05 1.26
+++ /project/movitz/cvsroot/movitz/compiler-types.lisp 2008/04/27 19:14:54 1.27
@@ -10,7 +10,7 @@
;;;; Author: Frode Vatvedt Fjeld <frodef at acm.org>
;;;; Created at: Wed Sep 10 00:40:07 2003
;;;;
-;;;; $Id: compiler-types.lisp,v 1.26 2006/11/08 08:57:05 ffjeld Exp $
+;;;; $Id: compiler-types.lisp,v 1.27 2008/04/27 19:14:54 ffjeld Exp $
;;;;
;;;;------------------------------------------------------------------
@@ -233,15 +233,19 @@
;;;
(defparameter *tb-bitmap*
- '(hash-table character function cons keyword symbol vector array integer ratio :tail)
+ '(hash-table character function cons keyword symbol vector array integer ratio complex :tail)
"The union of these types must be t.")
(defun basic-typep (x type)
(ecase type
(hash-table
(and (typep x 'movitz-struct)
- (eq (movitz-read 'muerte.cl:hash-table)
- (slot-value x 'name))))
+ (eq (muerte::movitz-find-class 'muerte.cl:hash-table)
+ (slot-value x 'class))))
+ (complex
+ (and (typep x 'movitz-struct)
+ (eq (muerte::movitz-find-class 'muerte.cl:complex)
+ (slot-value x 'class))))
(character
(typep x 'movitz-character))
(function
@@ -366,7 +370,7 @@
(or (type-code-p 'integer code)
(and integer-range
(numscope-memberp integer-range (movitz-bignum-value x)))))
- (t (dolist (bt '(symbol character function cons hash-table vector ratio)
+ (t (dolist (bt '(symbol character function cons hash-table vector ratio complex)
(error "Cant decide typep for ~S." x))
(when (basic-typep x bt)
(return (type-code-p bt code))))))
More information about the Movitz-cvs
mailing list