X-Git-Url: http://git.kpe.io/?a=blobdiff_plain;f=class-support.lisp;h=84a4790d74672f2e9e55c81c1a31fd471994ade0;hb=48c4c04c81cf49ae6c6dd7aabc43bb172addb75b;hp=5f8778da086ce822185cdf9f420d9dd2ae33a896;hpb=40f95c8097f0617a30f3520c5767a61df871b0dc;p=umlisp.git diff --git a/class-support.lisp b/class-support.lisp index 5f8778d..84a4790 100644 --- a/class-support.lisp +++ b/class-support.lisp @@ -7,7 +7,7 @@ ;;;; Author: Kevin M. Rosenberg ;;;; Date Started: Apr 2000 ;;;; -;;;; $Id: class-support.lisp,v 1.12 2003/06/12 16:37:44 kevin Exp $ +;;;; $Id: class-support.lisp,v 1.13 2003/06/15 07:48:30 kevin Exp $ ;;;; ;;;; This file, part of UMLisp, is ;;;; Copyright (c) 2000-2003 by Kevin M. Rosenberg, M.D. @@ -81,6 +81,32 @@ (defmethod fmt-eui ((e null)) (format nil "nil")) +(defun cui-p (ui) + "Check if a string is a CUI" + (check-ui ui #\C 7)) + +(defun lui-p (ui) + "Check if a string is a LUI" + (check-ui ui #\L 7)) + +(defun sui-p (ui) + "Check if a string is a SUI" + (check-ui ui #\S 7)) + +(defun tui-p (ui) + (check-ui ui #\T 3)) + +(defun eui-p (ui) + (check-ui ui #\E 7)) + +(defun check-ui (ui start-char len) + (when (and (stringp ui) + (= (length ui) (1+ len)) + (char-equal start-char (schar ui 0)) + (ignore-errors (parse-integer ui :start 1))) + t)) + + ;;; Generic display functions (eval-when (:compile-toplevel :load-toplevel :execute)