]> git.eshelyaron.com Git - emacs.git/commitdiff
Add edebug specs to destructuring macros
authorJoão Távora <joaotavora@gmail.com>
Sun, 16 Dec 2018 13:51:14 +0000 (13:51 +0000)
committerJoão Távora <joaotavora@gmail.com>
Sun, 16 Dec 2018 13:52:12 +0000 (13:52 +0000)
* eglot.el (eglot--dbind, eglot--lambda, eglot--dcase): Add edebug
specs.

lisp/progmodes/eglot.el

index 429c329c8244b1e74c17d615222027b420508a89..e83562fd201b37f35e4ab44c5f29210f1bdc33ca 100644 (file)
@@ -340,7 +340,7 @@ on unknown notifications and errors on unknown requests.
   "Destructure OBJECT of binding VARS in BODY.
 VARS is ([(INTERFACE)] SYMS...)
 Honour `eglot-strict-mode'."
-  (declare (indent 2))
+  (declare (indent 2) (debug (sexp sexp &rest form)))
   (let ((interface-name (if (consp (car vars))
                             (car (pop vars))))
         (object-once (make-symbol "object-once"))
@@ -366,7 +366,7 @@ Honour `eglot-strict-mode'."
 (cl-defmacro eglot--lambda (cl-lambda-list &body body)
   "Function of args CL-LAMBDA-LIST for processing INTERFACE objects.
 Honour `eglot-strict-mode'."
-  (declare (indent 1))
+  (declare (indent 1) (debug (sexp &rest form)))
   (let ((e (cl-gensym "jsonrpc-lambda-elem")))
     `(lambda (,e) (eglot--dbind ,cl-lambda-list ,e ,@body))))
 
@@ -374,7 +374,7 @@ Honour `eglot-strict-mode'."
   "Like `pcase', but for the LSP object OBJ.
 CLAUSES is a list (DESTRUCTURE FORMS...) where DESTRUCTURE is
 treated as in `eglot-dbind'."
-  (declare (indent 1))
+  (declare (indent 1) (debug (sexp &rest (sexp &rest form))))
   (let ((obj-once (make-symbol "obj-once")))
     `(let ((,obj-once ,obj))
        (cond