doc/list-exports.lisp: Bind `*package*' while reading files.
[sod] / doc / list-exports.lisp
index 5cb8600..c67d0ab 100644 (file)
@@ -9,7 +9,7 @@
     (declare (ignore head tail))
     nil))
 
-(defmethod form-list-exports ((head (eql 'export)) tail)
+(defmethod form-list-exports ((head (eql 'cl:export)) tail)
   (let ((symbols (car tail)))
     (if (and (consp symbols)
             (eq (car symbols) 'quote))
@@ -17,7 +17,7 @@
          (if (atom thing) (list thing) thing))
        (incomprehensible-form head tail))))
 
-(defmethod form-list-exports ((head (eql 'definst)) tail)
+(defmethod form-list-exports ((head (eql 'sod:definst)) tail)
   (destructuring-bind (code (streamvar &key export) args &body body) tail
     (declare (ignore streamvar body))
     (and export
                          (symbolicate 'inst- arg))
                        args)))))
 
-(defmethod form-list-exports ((head (eql 'define-tagged-type)) tail)
+(defmethod form-list-exports ((head (eql 'sod::define-tagged-type)) tail)
   (destructuring-bind (kind what) tail
     (declare (ignore what))
     (list kind
          (symbolicate 'c- kind '-type)
          (symbolicate 'make- kind '-type))))
 
-(defmethod form-list-exports ((head (eql 'macrolet)) tail)
+(defmethod form-list-exports ((head (eql 'cl:macrolet)) tail)
   (mapcan #'form-exports (cdr tail)))
 
-(defmethod form-list-exports ((head (eql 'eval-when)) tail)
+(defmethod form-list-exports ((head (eql 'cl:eval-when)) tail)
   (mapcan #'form-exports (cdr tail)))
 
-(defmethod form-list-exports ((head (eql 'progn)) tail)
+(defmethod form-list-exports ((head (eql 'cl:progn)) tail)
   (mapcan #'form-exports tail))
 
 (defgeneric form-exports (form)
@@ -69,7 +69,8 @@
 
 (defun find-symbol-homes (paths package)
   (let* ((symbols (list-exported-symbols package))
-        (exports-alist (mapcan #'list-exports paths))
+        (exports-alist (let ((*package* package))
+                         (mapcan #'list-exports paths)))
         (homes (make-hash-table :test #'equal)))
     (dolist (assoc exports-alist)
       (let ((home (car assoc)))