X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fpcl%2Fdescribe.lisp;h=d459b530fbaab4845f407ed14aaacf8dbabc4563;hb=304c44d731bea3b9ce3c47d864d90eac92ba604e;hp=71ced2d9b33fa148d77eda5284548cc54ed397c6;hpb=479ef26343b45753fc019b6535d3aa0ee54cb324;p=sbcl.git diff --git a/src/pcl/describe.lisp b/src/pcl/describe.lisp index 71ced2d..d459b53 100644 --- a/src/pcl/describe.lisp +++ b/src/pcl/describe.lisp @@ -91,21 +91,23 @@ (defmethod describe-object ((fun standard-generic-function) stream) (format stream "~&~A is a generic function." fun) - (format stream "~&Its arguments are:~& ~S" + (when (documentation fun t) + (format stream "~& Function documentation: ~A" (documentation fun t))) + (format stream "~&Its lambda-list is:~& ~S" (generic-function-pretty-arglist fun)) (let ((methods (generic-function-methods fun))) (if (null methods) (format stream "~&It has no methods.~%") (let ((gf-name (generic-function-name fun))) - (format stream "Its methods are:") + (format stream "~&Its methods are:") (dolist (method methods) - (format stream "~2% (~A ~{~S ~}~:S) =>" + (format stream "~& (~A ~{~S ~}~:S)~%" gf-name (method-qualifiers method) (unparse-specializers method)) - (describe (or (method-fast-function method) - (method-function method)) - stream)))))) + (when (documentation method t) + (format stream "~& Method documentation: ~A" + (documentation method t)))))))) (defmethod describe-object ((class class) stream) (flet ((pretty-class (c) (or (class-name c) c)))