;;;; Programmer: Kevin M. Rosenberg
;;;; Date Started: Apr 2000
;;;;
-;;;; $Id: attrib-class.lisp,v 1.7 2003/04/29 01:35:58 kevin Exp $
+;;;; $Id: attrib-class.lisp,v 1.11 2003/04/29 06:40:03 kevin Exp $
;;;;
;;;; This file, part of KMRCL, is Copyright (c) 2002 by Kevin M. Rosenberg
;;;;
(superclass kmr-mop:standard-class))
t)
-(defmethod kmr-mop:direct-slot-definition-class ((cl attributes-class)
- #+(or sbcl cmu scl lispworks)
- initargs
- #+(or allegro)
- &rest iargs)
- ;; (format t "attributes:~s iargs:~s~%" attributes iargs)
+(defmethod kmr-mop:direct-slot-definition-class ((cl attributes-class) #+kmr-normal-dsdc &rest initargs)
+ (declare (ignore initargs))
(kmr-mop:find-class 'attributes-dsd))
+#+ignore
(defmethod kmr-mop:compute-effective-slot-definition :around
- ((cl attributes-class) #+kmr-named-cesd name dsds)
- #+kmr-named-cesd (declare (ignore name))
+ ((cl attributes-class) #+kmr-normal-cesd name dsds)
+ #+kmr-normal-cesd (declare (ignore name))
(apply
#'make-instance 'attributes-esd
:attributes (remove-duplicates (mapappend #'dsd-attributes dsds))
- (kmr-mop:compute-effective-slot-definition-initargs cl dsds))
+ (kmr-mop::compute-effective-slot-definition-initargs cl dsds))
)
-#+ignore
(defmethod kmr-mop:compute-effective-slot-definition :around
((cl attributes-class) #+kmr-named-cesd name dsds)
#+kmr-named-cesd (declare (ignore name))
- (let ((normal-slot (call-next-method)))
- (setf (esd-attributes normal-slot)
- (remove-duplicates
- (mapappend #'esd-attributes dsds)))
- normal-slot))
+ (let ((esd (call-next-method)))
+ (print esd)
+ (print (remove-duplicates
+ (mapappend #'dsd-attributes dsds)))
+ (setf (esd-attributes esd)
+ (remove-duplicates (mapappend #'dsd-attributes dsds)))
+ esd))
(defmethod kmr-mop:compute-slots ((class attributes-class))