core-lib: add prependq! and appendq! macros

This commit is contained in:
Henrik Lissner 2019-07-21 14:39:16 +02:00
parent 0f98b5b3c2
commit b742bf086f
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395

View file

@ -180,6 +180,14 @@ The order VALUES is preserved."
`(dolist (--value-- (nreverse (list ,@values))) `(dolist (--value-- (nreverse (list ,@values)))
(cl-pushnew --value-- ,place))) (cl-pushnew --value-- ,place)))
(defmacro prependq! (sym &rest lists)
"Prepend LISTS to SYM in place."
`(setq ,sym (append (list ,@lists) ,sym)))
(defmacro appendq! (sym &rest lists)
"Append LISTS to SYM in place."
`(setq ,sym (append ,sym ,@lists)))
(defmacro delq! (elt list &optional fetcher) (defmacro delq! (elt list &optional fetcher)
"Delete ELT from LIST in-place." "Delete ELT from LIST in-place."
`(setq ,list `(setq ,list