Index: package.lisp
===================================================================
RCS file: /project/cl-store/cvsroot/cl-store/package.lisp,v
retrieving revision 1.18
diff -u -r1.18 package.lisp
--- package.lisp	16 Feb 2005 12:40:24 -0000	1.18
+++ package.lisp	16 Feb 2005 15:19:56 -0000
@@ -11,7 +11,7 @@
            #:*nuke-existing-classes* #:*store-class-superclasses*
            #:cl-store-error #:store-error #:restore-error #:store
            #:restore #:backend-store #:store-backend-code #:store-object
-           #:backend-store-object #:get-class-details #:get-array-values
+           #:backend-store-object #:get-class-details #:get-slot-details #:get-array-values
            #:restore #:backend-restore #:cl-store #:referrerp
            #:check-magic-number #:get-next-reader #:int-sym-or-char-p
            #:restore-object #:backend-restore-object
@@ -101,6 +101,7 @@
                         #:ensure-class)
   
   #+lispworks  (:import-from #:clos
+			     #:slot-definition
                              #:slot-definition-name
                              #:generic-function-name
                              #:slot-definition-allocation
Index: utils.lisp
===================================================================
RCS file: /project/cl-store/cvsroot/cl-store/utils.lisp,v
retrieving revision 1.11
diff -u -r1.11 utils.lisp
--- utils.lisp	11 Feb 2005 12:00:31 -0000	1.11
+++ utils.lisp	16 Feb 2005 15:19:57 -0000
@@ -16,17 +16,18 @@
   (apply #'append (apply #'mapcar fn lsts)))
 
 
-(defun get-slot-details (slot-definition)
-  "Return a list of slot details which can be
-   used as an argument to ensure-class"
-  (list :name (slot-definition-name slot-definition)
-        :allocation (slot-definition-allocation slot-definition)
-        :initargs (slot-definition-initargs slot-definition)
-        ;; :initform. dont use initform until we can
-        ;; serialize functions
-        :readers (slot-definition-readers slot-definition)
-        :type (slot-definition-type slot-definition)
-        :writers (slot-definition-writers slot-definition)))
+(defgeneric get-slot-details (slot-definition)
+  (:documentation "Return a list of slot details which can 
+be used as an argument to ensure-class")
+  (:method ((slot-definition slot-definition))
+    (list :name (slot-definition-name slot-definition)
+	  :allocation (slot-definition-allocation slot-definition)
+	  :initargs (slot-definition-initargs slot-definition)
+	  ;; :initform. dont use initform until we can
+	  ;; serialize functions
+	  :readers (slot-definition-readers slot-definition)
+	  :type (slot-definition-type slot-definition)
+	  :writers (slot-definition-writers slot-definition))))
 
 (defmacro awhen (test &body body)
   `(aif ,test
