[slime-cvs] CVS slime
mkoeppe
mkoeppe at common-lisp.net
Fri Jun 16 16:34:14 UTC 2006
Update of /project/slime/cvsroot/slime
In directory clnet:/tmp/cvs-serv13399
Modified Files:
swank.lisp
Log Message:
(operator-designator-to-form): Handle :cerror.
(extra-keywords cerror): Make it work.
--- /project/slime/cvsroot/slime/swank.lisp 2006/05/31 19:27:13 1.380
+++ /project/slime/cvsroot/slime/swank.lisp 2006/06/16 16:34:14 1.381
@@ -1412,6 +1412,9 @@
(let ((parsed-operator-name (parse-symbol operator-name)))
(values `(,parsed-operator-name ',(parse-symbol class-name))
operator-name)))
+ ((:cerror continue-string class-name)
+ (values `(cerror ,continue-string ',(parse-symbol class-name))
+ 'cerror))
((:defmethod generic-name)
(values `(defmethod ,(parse-symbol generic-name))
'defmethod))))
@@ -1893,15 +1896,19 @@
(multiple-value-or (apply #'extra-keywords/make-instance operator args)
(call-next-method)))
-;;; FIXME: these two don't work yet: they need extra support from
-;;; slime.el (slime-enclosing-operator-names) and swank.lisp
-;;; (OPERATOR-DESIGNATOR-TO-FORM).
(defmethod extra-keywords ((operator (eql 'cerror))
&rest args)
- (multiple-value-or (apply #'extra-keywords/make-instance operator
- (cdr args))
- (call-next-method)))
+ (multiple-value-bind (keywords aok determiners)
+ (apply #'extra-keywords/make-instance operator
+ (cdr args))
+ (if keywords
+ (values keywords aok
+ (cons (car args) determiners))
+ (call-next-method))))
+;;; FIXME: this one doesn't work yet: it needs extra support from
+;;; slime.el (slime-extended-operator-name-parser-alist) and swank.lisp
+;;; (OPERATOR-DESIGNATOR-TO-FORM).
(defmethod extra-keywords ((operator (eql 'change-class))
&rest args)
(multiple-value-or (apply #'extra-keywords/change-class operator (cdr args))
More information about the slime-cvs
mailing list