r4938: Auto commit for Debian build
[umlisp.git] / class-support.lisp
index f78ed7e02e84822bb0f2d97de7435796cf8ea74c..09bca9126f99449ed0b8f49c25bc2d41ca2ec4d3 100644 (file)
@@ -7,7 +7,7 @@
 ;;;; Author:       Kevin M. Rosenberg
 ;;;; Date Started: Apr 2000
 ;;;;
-;;;; $Id: class-support.lisp,v 1.4 2003/05/07 21:57:06 kevin Exp $
+;;;; $Id: class-support.lisp,v 1.6 2003/05/14 21:33:02 kevin Exp $
 ;;;;
 ;;;; This file, part of UMLisp, is
 ;;;;    Copyright (c) 2000-2002 by Kevin M. Rosenberg, M.D.
 
 ;;; Formatting routines
 
+
+
 (defgeneric fmt-cui (c))
 (defmethod fmt-cui ((c ucon))
-  (format nil "C~7,'0d" (cui c)))
+  (fmt-cui (cui c)))
 
 (defmethod fmt-cui ((c fixnum))
-  (format nil "C~7,'0d" c))
+  (prefixed-fixnum-string c #\C 8))
 
 (defmethod fmt-cui ((c string))
   (if (eql (aref c 0) #\C)
       c
-    (format nil "C~7,'0d" (parse-integer c))))
+      (fmt-cui (parse-integer c))))
 
 (defmethod fmt-cui ((c null))
   (format nil "nil"))
 
 (defgeneric fmt-lui (c))
 (defmethod fmt-lui ((l uterm))
-  (format nil "L~7,'0d" (lui l)))
+  (fmt-lui (lui l)))
 
 (defmethod fmt-lui ((l fixnum))
-  (format nil "L~7,'0d" l))
+  (prefixed-fixnum-string l #\L 8))
 
 (defmethod fmt-lui ((l string))
   (if (eql (aref l 0) #\L)
       l
-  (format nil "L~7,'0d" (parse-integer l))))
+      (fmt-lui (parse-integer l))))
 
 (defgeneric fmt-sui (s))
 (defmethod fmt-sui ((s ustr))
-  (format nil "S~7,'0d" (sui s)))
+  (fmt-sui (sui s)))
 
 (defmethod fmt-sui ((s fixnum))
-  (format nil "S~7,'0d" s))
+  (prefixed-fixnum-string s #\S 8))
 
 (defmethod fmt-sui ((s string))
   (if (eql (aref s 0) #\S)
       s
-  (format nil "S~7,'0d" (parse-integer s))))
+      (fmt-sui (parse-integer s))))
 
 (defgeneric fmt-tui (t))
-(defmethod fmt-tui ((s fixnum))
-  (format nil "T~3,'0d" s))
+(defmethod fmt-tui ((t fixnum))
+  (prefixed-fixnum-string t #\T 4))
 
 (defmethod fmt-tui ((s string))
   (if (eql (aref s 0) #\T)
       s
-  (format nil "T~3,'0d" (parse-integer s))))
+      (fmt-tui (parse-integer s))))
 
 (defgeneric fmt-eui (e))
 (defmethod fmt-eui ((e fixnum))
-  (format nil "E~7,'0d" e))
+  (prefixed-fixnum-string e #\E 8))
 
 (defmethod fmt-eui ((e string))
   (if (eql (aref e 0) #\E)
       e
-    (format nil "E~7,'0d" (parse-integer e))))
+      (fmt-eui (parse-integer e))))
 
 (defmethod fmt-eui ((e null))
   (format nil "nil"))
   "Returns T if UCON has a semantic type of TUI."
   (some #'(lambda (usty) (= tui (tui usty))) (s#sty ucon)))
 
+(defgeneric suistr (lo))
+(defmethod suistr ((lo ulo))
+  "Return the string for a ulo object"
+  (find-string-sui (sui lo)))
+
 #+(or scl cmu)
 (dolist (c '(urank udef usat uso ucxt ustr ulo uterm usty urel ucoc uatx ucon uxw uxnw uxns lexterm labr lagr lcmp lmod lnom lprn lprp lspl ltrm ltyp lwd sdef sstr sstre1 sstre2 usrl))
     #+cmu