X-Git-Url: https://git.distorted.org.uk/~mdw/sod/blobdiff_plain/d610d8beaab27c822bd69bb857c3630b6a743b97..fbd5be649c2cddfdcf0557bf7321b1d1bbaa39e4:/doc/list-exports.lisp diff --git a/doc/list-exports.lisp b/doc/list-exports.lisp index 240ecc2..8ef80b8 100755 --- a/doc/list-exports.lisp +++ b/doc/list-exports.lisp @@ -205,13 +205,17 @@ (t (best-package-name pkg))) (or exportp (null pkg)) (symbol-name symbol)))) +(deftype interesting-class () + '(or standard-class + structure-class + #.(class-name (class-of (find-class 'condition))))) + (defun analyse-classes (package) (setf package (find-package package)) (let ((classes (mapcan (lambda (symbol) (let ((class (find-class symbol nil))) (and class - (typep class '(or standard-class - structure-class)) + (typep class 'interesting-class) (list class)))) (list-exported-symbols package))) (subs (make-hash-table))) @@ -360,7 +364,7 @@ #'order-specializers :key #'method-specializers)) (when (gethash method methods) - (format t "~2T~{~A~^ ~}~%" + (format t "~2T~{~A~^ ~}~@[ [~{~(~S~)~^ ~}]~]~%" (mapcar (lambda (spec) (etypecase spec @@ -374,7 +378,8 @@ (if (symbolp obj) (pretty-symbol-name obj package) obj)))))) - (method-specializers method)))))))))) + (method-specializers method)) + (method-qualifiers method))))))))) (defun check-slot-names (package) (setf package (find-package package)) @@ -457,9 +462,9 @@ (parser-files (files (by-name sod "parser"))) (utilities (by-name sod "utilities")) (sod-frontend (asdf:find-system "sod-frontend")) - (optparse (by-name sod-frontend "optparse")) + (optparse (by-name sod "optparse")) (frontend (by-name sod-frontend "frontend")) - (sod-files (set-difference (files sod) (list utilities)))) + (sod-files (set-difference (files sod) (list optparse utilities)))) (report-symbols (mapcar #'file-name sod-files) "SOD") (report-symbols (mapcar #'file-name (list frontend)) "SOD-FRONTEND") (report-symbols (mapcar #'file-name parser-files) "SOD-PARSER")