Update of /project/cl-unification/cvsroot/cl-unification
In directory common-lisp.net:/tmp/cvs-serv1402
Modified Files:
lambda-list-parsing.lisp unifier.lisp
Log Message:
Fixed minor problem in Lambda List parsing.
Also VALID-TEMPLATE-P was expanded, and it looks like it should become
a generic function.
Date: Fri Jan 28 11:30:36 2005
Author: mantoniotti
Index: cl-unification/lambda-list-parsing.lisp
diff -u cl-unification/lambda-list-parsing.lisp:1.1.1.1 cl-unification/lambda-list-parsing.lisp:1.2
--- cl-unification/lambda-list-parsing.lisp:1.1.1.1 Wed Nov 17 14:19:54 2004
+++ cl-unification/lambda-list-parsing.lisp Fri Jan 28 11:30:35 2005
@@ -51,11 +51,16 @@
;;; The next function is really implementation-dependent, give the
;;; definition of LAMBDA-LIST-KEYWORDS
+
(define-condition lambda-list-parsing-error (program-error)
((item :reader lambda-list-parsing-error-item
:initarg :item)
)
+ (:report (lambda (llpe stream)
+ (format stream "Error while parsing an extended lambda-list (at ~S.)"
+ (lambda-list-parsing-error-item llpe))))
)
+
(defun symbol-or-cons-p (x)
(or (symbolp x) (consp x)))
Index: cl-unification/unifier.lisp
diff -u cl-unification/unifier.lisp:1.1.1.1 cl-unification/unifier.lisp:1.2
--- cl-unification/unifier.lisp:1.1.1.1 Wed Nov 17 14:19:55 2004
+++ cl-unification/unifier.lisp Fri Jan 28 11:30:35 2005
@@ -214,11 +214,16 @@
;;; valid-template-p --
;;; Useful later. Tests whether the object X can be considered a template.
+;;; This should probably become a generic function.
(defun valid-template-p (x)
(or (symbolp x)
(consp x)
(numberp x)
+ (arrayp x)
+ (typep (class-of x) 'structure-class)
+ (typep (class-of x) 'standard-class)
+ (typep (class-of x) 'built-in-class)
(template-p x)))