[cl-unification-cvs] CVS cl-unification

Update of /project/cl-unification/cvsroot/cl-unification In directory cl-net:/tmp/cvs-serv27591 Modified Files: templates-hierarchy.lisp Log Message: Added LAMBDA-TEMPLATE. --- /project/cl-unification/cvsroot/cl-unification/templates-hierarchy.lisp 2008/07/13 13:10:48 1.4 +++ /project/cl-unification/cvsroot/cl-unification/templates-hierarchy.lisp 2009/04/15 10:18:59 1.5 @@ -1,4 +1,6 @@ -;;; -*- Mode: Lisp -*- +;;;; -*- Mode: Lisp -*- + +;;;; templates-hierarchy.lisp -- (in-package "CL.EXT.DACF.UNIFICATION") ; DACF = Data And Control Flow. @@ -121,6 +123,15 @@ (:method ((x list-template)) t) (:method ((x t)) nil)) + +(defclass lambda-template (list-template expression-template) ()) + +(defgeneric lambda-template-p (x) + (:method ((x lambda-template)) t) + (:method ((x t)) nil)) + + + (defclass array-template (type-template) ()) (defgeneric array-template-p (x) @@ -332,6 +343,9 @@ (defmethod make-template ((kind (eql 'list)) (spec cons)) (make-instance 'list-template :spec spec)) +(defmethod make-template ((kind (eql 'lambda)) (spec cons)) + (make-instance 'lambda-template :spec spec)) + (defmethod make-template ((kind (eql 'vector)) (spec cons)) (make-instance 'vector-template :spec spec))
participants (1)
-
mantoniotti