X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=doc%2Fmanual%2Fdocstrings.lisp;h=1177d3db1ffda1071301a52eacd14a270885992b;hb=a42922aef908a1b45ae5420d51b2ca7ee1bafb9e;hp=e5db38a5a0baebe891c036ef273ddeb36f5fec6f;hpb=f19f97599d0d6617906bddf3e8488d5c3eb159a1;p=sbcl.git diff --git a/doc/manual/docstrings.lisp b/doc/manual/docstrings.lisp index e5db38a..1177d3d 100644 --- a/doc/manual/docstrings.lisp +++ b/doc/manual/docstrings.lisp @@ -702,7 +702,7 @@ followed another tabulation label or a tabulation body." (when (member (get-kind doc) '(class structure condition)) (let ((name (get-name doc))) ;; class precedence list - (format *texinfo-output* "Class precedence list: @code{~(~{@w{~A}~^, ~}~)}~%~%" + (format *texinfo-output* "Class precedence list: @code{~(~{@lw{~A}~^, ~}~)}~%~%" (remove-if (lambda (class) (hide-superclass-p name class)) (mapcar #'class-name (ensure-class-precedence-list (find-class name))))) ;; slots @@ -711,10 +711,21 @@ followed another tabulation label or a tabulation body." (when slots (format *texinfo-output* "Slots:~%@itemize~%") (dolist (slot slots) - (format *texinfo-output* "@item ~(@code{~A} ~ - ~@[--- initargs: @code{~{@w{~S}~^, ~}}~]~)~%~%" + (format *texinfo-output* + "@item ~(@code{~A}~#[~:; --- ~]~ + ~:{~2*~@[~2:*~A~P: ~{@code{@w{~S}}~^, ~}~]~:^; ~}~)~%~%" (slot-definition-name slot) - (slot-definition-initargs slot)) + (remove + nil + (mapcar + (lambda (name things) + (if things + (list name (length things) things))) + '("initarg" "reader" "writer") + (list + (slot-definition-initargs slot) + (slot-definition-readers slot) + (slot-definition-writers slot))))) ;; FIXME: Would be neater to handler as children (write-texinfo-string (docstring slot t))) (format *texinfo-output* "@end itemize~%~%"))))))