[slime-cvs] CVS slime

CVS User trittweiler trittweiler at common-lisp.net
Wed Apr 29 22:20:25 UTC 2009


Update of /project/slime/cvsroot/slime
In directory cl-net:/tmp/cvs-serv8388

Modified Files:
	ChangeLog swank-backend.lisp swank-openmcl.lisp 
Log Message:
	* swank-backend.lisp ([default] declaration-arglist): Add
	arglist of DECLARATION declaration.

	* swank-openmcl.lisp ([eql 'optimize] declaration-arglist):
	Implement it for CCL.
	(describe-symbol-for-emacs): Add :CLASS and :TYPE.
	(describe-definition): Add :TYPE.

	* swank-sbcl.lisp (describe-symbol-for-emacs): Add :CLASS.

	Adapted from patch by Stas Boukarev.


--- /project/slime/cvsroot/slime/ChangeLog	2009/04/29 22:05:16	1.1731
+++ /project/slime/cvsroot/slime/ChangeLog	2009/04/29 22:20:25	1.1732
@@ -1,3 +1,17 @@
+2009-04-30  Tobias C. Rittweiler  <tcr at freebits.de>
+
+	* swank-backend.lisp ([default] declaration-arglist): Add
+	arglist of DECLARATION declaration.
+
+	* swank-openmcl.lisp ([eql 'optimize] declaration-arglist):
+	Implement it for CCL.
+	(describe-symbol-for-emacs): Add :CLASS and :TYPE.
+	(describe-definition): Add :TYPE.
+
+	* swank-sbcl.lisp (describe-symbol-for-emacs): Add :CLASS.
+
+	Adapted from patch by Stas Boukarev.
+
 2009-04-29  Tobias C. Rittweiler  <tcr at freebits.de>
 
 	* slime.el (slime-extend-region-for-font-lock): (nth 0
--- /project/slime/cvsroot/slime/swank-backend.lisp	2009/02/26 19:57:35	1.174
+++ /project/slime/cvsroot/slime/swank-backend.lisp	2009/04/29 22:20:25	1.175
@@ -521,7 +521,8 @@
       (ignorable      '(&rest vars))
       (special        '(&rest vars))
       (inline         '(&rest function-names))
-      (notinline      '(&rest function-name))
+      (notinline      '(&rest function-names))
+      (declaration    '(&rest names))
       (optimize       '(&any compilation-speed debug safety space speed))  
       (type           '(type-specifier &rest args))
       (ftype          '(type-specifier &rest function-names))
--- /project/slime/cvsroot/slime/swank-openmcl.lisp	2009/03/27 12:58:45	1.160
+++ /project/slime/cvsroot/slime/swank-openmcl.lisp	2009/04/29 22:20:25	1.161
@@ -219,6 +219,12 @@
 (defimplementation function-name (function)
   (ccl:function-name function))
 
+(defmethod declaration-arglist ((decl-identifier (eql 'optimize)))
+  (let ((flags (ccl:declaration-information decl-identifier)))
+    (if flags
+        `(&any ,flags)
+        (call-next-method))))
+
 ;;; Compilation
 
 (defvar *buffer-offset* nil)
@@ -871,6 +877,12 @@
                                         `(setf ,symbol))))
                (when (fboundp setf-function-name)
                  (doc 'function setf-function-name))))
+      (maybe-push
+       :class (when (find-class symbol nil)
+                (doc 'class)))
+      (maybe-push
+       :type (when (ccl:type-specifier-p symbol)
+               (doc 'type)))
       result)))
 
 (defimplementation describe-definition (symbol namespace)
@@ -882,7 +894,9 @@
     (:setf
      (describe (ccl::setf-function-spec-name `(setf ,symbol))))
     (:class
-     (describe (find-class symbol)))))
+     (describe (find-class symbol)))
+    (:type
+     (describe symbol))))
 
 (defimplementation toggle-trace (spec)
   "We currently ignore just about everything."





More information about the slime-cvs mailing list