[slime-cvs] CVS update: slime/swank-lispworks.lisp

Helmut Eller heller at common-lisp.net
Fri Jun 25 08:05:38 UTC 2004


Update of /project/slime/cvsroot/slime
In directory common-lisp.net:/tmp/cvs-serv5398

Modified Files:
	swank-lispworks.lisp 
Log Message:
(frame-var-value): New backend function.

Date: Fri Jun 25 01:05:38 2004
Author: heller

Index: slime/swank-lispworks.lisp
diff -u slime/swank-lispworks.lisp:1.46 slime/swank-lispworks.lisp:1.47
--- slime/swank-lispworks.lisp:1.46	Thu Jun 17 08:59:46 2004
+++ slime/swank-lispworks.lisp	Fri Jun 25 01:05:38 2004
@@ -239,18 +239,24 @@
                  (frame-actual-args frame)))
         (t (princ frame stream))))
 
+(defun frame-vars (frame)
+  (first (dbg::frame-locals-format-list frame #'list 75 0)))
+
 (defimplementation frame-locals (n)
   (let ((frame (nth-frame n)))
     (if (dbg::call-frame-p frame)
-	(destructuring-bind (vars with)
-	    (dbg::frame-locals-format-list frame #'list 75 0)
-	  (declare (ignore with))
-          (mapcar (lambda (var)
-                    (destructuring-bind (name value symbol location) var
-                      (declare (ignore name location))
-                      (list :name symbol :id 0
-                            :value value)))
-                  vars)))))
+        (mapcar (lambda (var)
+                  (destructuring-bind (name value symbol location) var
+                    (declare (ignore name location))
+                    (list :name symbol :id 0
+                          :value value)))
+                (frame-vars frame)))))
+
+(defimplementation frame-var-value (frame var)
+  (let ((frame (nth-frame frame)))
+    (destructuring-bind (_n value _s _l) (nth var (frame-vars frame))
+      (declare (ignore _n _s _l))
+      value)))
 
 (defimplementation frame-catch-tags (index)
   (declare (ignore index))





More information about the slime-cvs mailing list