X-Git-Url: https://git.distorted.org.uk/~mdw/sod/blobdiff_plain/765231c00c9da4426ed07abc911f80828faa0349..c2937ad051ba14976712013e27d3aee8ad4b334b:/doc/list-exports.lisp diff --git a/doc/list-exports.lisp b/doc/list-exports.lisp index bc40e95..6663801 100755 --- a/doc/list-exports.lisp +++ b/doc/list-exports.lisp @@ -116,6 +116,16 @@ (sort (loop for s being the external-symbols of package collect s) #'string< :key #'symbol-name)) +(defun list-all-symbols (package) + (let ((externs (make-hash-table))) + (dolist (sym (list-exported-symbols package)) + (setf (gethash sym externs) t)) + (sort (loop for s being the symbols of package + when (or (not (exported-symbol-p s)) + (gethash s externs)) + collect s) + #'string< :key #'symbol-name))) + (defun find-symbol-homes (paths package) (let* ((symbols (list-exported-symbols package)) (exports-alist (let ((*package* package)) @@ -427,7 +437,7 @@ (defun check-slot-names (package) (setf package (find-package package)) - (let* ((symbols (list-exported-symbols package)) + (let* ((symbols (list-all-symbols package)) (classes (mapcan (lambda (symbol) (when (eq (symbol-package symbol) package) (let ((class (find-class symbol nil)))