Add operation `object-description' which is to be used by inspection
authorChris Hanson <org/chris-hanson/cph>
Mon, 1 May 1989 21:10:16 +0000 (21:10 +0000)
committerChris Hanson <org/chris-hanson/cph>
Mon, 1 May 1989 21:10:16 +0000 (21:10 +0000)
tools to examine class-system instances.

v7/src/edwin/class.scm

index ccf6da40bc7a003532fc04a453967c9ec48a2aeb..398794bcc5f4902335fff7e36f5636f774bdc3c2 100644 (file)
@@ -1,6 +1,6 @@
 ;;; -*-Scheme-*-
 ;;;
-;;;    $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/edwin/class.scm,v 1.69 1989/04/28 22:48:24 cph Exp $
+;;;    $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/edwin/class.scm,v 1.70 1989/05/01 21:10:16 cph Rel $
 ;;;
 ;;;    Copyright (c) 1986, 1989 Massachusetts Institute of Technology
 ;;;
@@ -92,7 +92,7 @@
        (and class
             (or (eq? class class*)
                 (loop (class-superclass class)))))))
-
+\f
 (define (make-object class)
   (if (not (class? class))
       (error "not a class" class))
 (define-integrable (object-method object name)
   (class-method (object-class object) name))
 
+(define (object-description object)
+  (map (lambda (transform)
+        (list (car transform) (vector-ref object (cdr transform))))
+       (class-instance-transforms (object-class object))))
+
 (define (send object operation . args)
   (apply (object-method object operation) object args))