[slime-cvs] CVS slime
CVS User heller
heller at common-lisp.net
Sat Jan 5 08:50:24 UTC 2013
Update of /project/slime/cvsroot/slime
In directory tiger.common-lisp.net:/tmp/cvs-serv26874
Modified Files:
ChangeLog swank-ccl.lisp
Log Message:
* swank-ccl.lisp (frame-package): Implemented.
--- /project/slime/cvsroot/slime/ChangeLog 2013/01/05 08:50:12 1.2379
+++ /project/slime/cvsroot/slime/ChangeLog 2013/01/05 08:50:24 1.2380
@@ -1,5 +1,9 @@
2013-01-05 Helmut Eller <heller at common-lisp.net>
+ * swank-ccl.lisp (frame-package): Implemented.
+
+2013-01-05 Helmut Eller <heller at common-lisp.net>
+
* swank-loader.lisp (init): Add a :quiet argument.
2012-12-27 Stas Boukarev <stassats at gmail.com>
--- /project/slime/cvsroot/slime/swank-ccl.lisp 2012/12/03 03:43:16 1.29
+++ /project/slime/cvsroot/slime/swank-ccl.lisp 2013/01/05 08:50:24 1.30
@@ -407,6 +407,20 @@
(pc-source-location lfun pc)
(function-source-location lfun)))))
+(defimplementation frame-package (frame-number)
+ (with-frame (p context) frame-number
+ (let* ((lfun (ccl:frame-function p context))
+ (name (ccl:function-name lfun)))
+ (labels ((name-package (name)
+ (etypecase name
+ (null nil)
+ (symbol (symbol-package name))
+ ((cons (eql setf) symbol) (symbol-package (cadr name)))
+ ((cons (eql :internal)) (name-package (car (last name))))
+ ((cons (and symbol (not keyword)) (cons list null))
+ (symbol-package (car name))))))
+ (name-package name)))))
+
(defimplementation eval-in-frame (form index)
(with-frame (p context) index
(let ((vars (ccl:frame-named-variables p context)))
More information about the slime-cvs
mailing list