[clim-desktop-cvs] CVS clim-desktop

thenriksen thenriksen at common-lisp.net
Sun May 28 13:37:46 UTC 2006


Update of /project/clim-desktop/cvsroot/clim-desktop
In directory clnet:/tmp/cvs-serv5295

Modified Files:
	swine.lisp 
Log Message:
Added list of lambda list keywords that should not be displayed.


--- /project/clim-desktop/cvsroot/clim-desktop/swine.lisp	2006/05/28 12:26:08	1.10
+++ /project/clim-desktop/cvsroot/clim-desktop/swine.lisp	2006/05/28 13:37:46	1.11
@@ -413,6 +413,9 @@
 (defparameter +cl-arglist-keywords+
   '(&whole &optional &rest &key &allow-other-keys &aux &body &environment))
 
+(defparameter +cl-garbage-keywords+
+  '(&whole &environment))
+
 (defun find-optional-argument-values (arglist provided-args &optional
                                       (split-arglist
                                        (split-arglist-on-keywords
@@ -565,18 +568,18 @@
                                         ; &aux parameters that should
                                         ; not be displayed.
                     
-                  with in-&environment  ; If non-NIL, the next
-                                        ; argument is an &environment
+                  with in-garbage       ; If non-NIL, the next
+                                        ; argument is a garbage
                                         ; parameter that should not be
                                         ; displayed.
                   if (eq arg-element '&aux)
                   do (setf in-&aux t)
-                  else if (eq arg-element '&environment)
-                    do (setf in-&environment t)
+                  else if (member arg-element +cl-garbage-keywords+ :test #'eq)
+                    do (setf in-garbage t)
                   else if (and (listp arg-element)
                           (> mandatory-argument-count
                              index)
-                          (not in-&environment)
+                          (not in-garbage)
                           (not in-&aux))
                     collect (multiple-value-bind (arglist
                                                   sublist-emphasized-symbols
@@ -604,15 +607,15 @@
                                                emphasized-symbols))))
                               arglist)
                   else if (and (assoc arg-name user-supplied-arg-values)
-                               (not in-&environment)
+                               (not in-garbage)
                                (not in-&aux))
                     collect (list arg-name
                                   (rest (assoc
                                          arg-name
                                          user-supplied-arg-values)))
                   else
-                    if in-&environment
-                      do (setf in-&environment nil)
+                    if in-garbage
+                      do (setf in-garbage nil)
                     else if (not in-&aux)
                      collect arg-element)))
       (setf ret-arglist (generate-arglist arglist)))




More information about the Clim-desktop-cvs mailing list