Simplify (and robustify) regular PACKing
[sbcl.git] / src / pcl / print-object.lisp
index 50153b2..7711dab 100644 (file)
   (fmakunbound 'print-object)
   (defgeneric print-object (object stream))
   (defmethod print-object ((x t) stream)
-    (print-unreadable-object (x stream :type t :identity t))))
+    (if *print-pretty*
+        (pprint-logical-block (stream nil)
+          (print-unreadable-object (x stream :type t :identity t)))
+        (print-unreadable-object (x stream :type t :identity t)))))
 (/show0 "done replacing placeholder PRINT-OBJECT with DEFGENERIC")
 \f
 ;;;; a hook called by the printer to take care of dispatching to PRINT-OBJECT
 (defmethod print-object ((dfun-info dfun-info) stream)
   (declare (type stream stream))
   (print-unreadable-object (dfun-info stream :type t :identity t)))
+
+(defmethod print-object ((ctor ctor) stream)
+  (print-unreadable-object (ctor stream :type t)
+    (format stream "~S ~:S" (ctor-class-or-name ctor) (ctor-initargs ctor)))
+  ctor)