[slime-cvs] CVS slime

gcarncross gcarncross at common-lisp.net
Sat Dec 22 02:53:58 UTC 2007


Update of /project/slime/cvsroot/slime
In directory clnet:/tmp/cvs-serv13416

Modified Files:
	swank-ecl.lisp 
Log Message:
try to parse the Args: line in most ecl functions to make modelines more interesting

--- /project/slime/cvsroot/slime/swank-ecl.lisp	2007/12/15 03:25:26	1.9
+++ /project/slime/cvsroot/slime/swank-ecl.lisp	2007/12/22 02:53:58	1.10
@@ -157,6 +157,19 @@
       (typecase name 
         (generic-function
          (clos::generic-function-lambda-list name))
+        (compiled-function
+         ; most of the compiled functions have an Args: line in their docs
+         (with-input-from-string (s (or
+                                     (si::get-documentation
+                                      (si:compiled-function-name name) 'function)
+                                     ""))
+           (do ((line (read-line s nil) (read-line s nil)))
+               ((not line) :not-available)
+             (ignore-errors
+               (if (string= (subseq line 0 6) "Args: ")
+                   (return-from nil
+                     (read-from-string (subseq line 6))))))))
+         ;
         (function
          (let ((fle (function-lambda-expression name)))
            (case (car fle)




More information about the slime-cvs mailing list