diff options
| author | Mattias EngdegÄrd | 2023-05-20 20:34:55 +0200 |
|---|---|---|
| committer | Mattias EngdegÄrd | 2023-05-20 20:34:55 +0200 |
| commit | f8cdb9e05067fba5dee193ac604e75a67a7ff2c9 (patch) | |
| tree | a923d5c7927cf2f4e8b0197b01f53636d3be51a2 | |
| parent | 88d1e9b436c8778c90b7a57a152aee8071ac77b9 (diff) | |
| download | emacs-f8cdb9e05067fba5dee193ac604e75a67a7ff2c9.tar.gz emacs-f8cdb9e05067fba5dee193ac604e75a67a7ff2c9.zip | |
Declare more mutating functions
* lisp/emacs-lisp/bytecomp.el (mutating-fns):
Add assoc-delete-all, assq-delete-all and rassq-delete-all.
* lisp/emacs-lisp/shortdoc.el (alist, list):
Don't mutate constants in examples illustrating use of
assoc-delete-all, assq-delete-all and rassq-delete-all.
| -rw-r--r-- | lisp/emacs-lisp/bytecomp.el | 1 | ||||
| -rw-r--r-- | lisp/emacs-lisp/shortdoc.el | 12 |
2 files changed, 8 insertions, 5 deletions
diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index b8d7b63a81a..ac040799a22 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el | |||
| @@ -3590,6 +3590,7 @@ lambda-expression." | |||
| 3590 | (delq 2) (delete 2) | 3590 | (delq 2) (delete 2) |
| 3591 | (delete-dups 1) (delete-consecutive-dups 1) | 3591 | (delete-dups 1) (delete-consecutive-dups 1) |
| 3592 | (plist-put 1) | 3592 | (plist-put 1) |
| 3593 | (assoc-delete-all 2) (assq-delete-all 2) (rassq-delete-all 2) | ||
| 3593 | (fillarray 1) | 3594 | (fillarray 1) |
| 3594 | (store-substring 1) | 3595 | (store-substring 1) |
| 3595 | (clear-string 1) | 3596 | (clear-string 1) |
diff --git a/lisp/emacs-lisp/shortdoc.el b/lisp/emacs-lisp/shortdoc.el index 1e8ab4ad46d..8c44a4fb0a0 100644 --- a/lisp/emacs-lisp/shortdoc.el +++ b/lisp/emacs-lisp/shortdoc.el | |||
| @@ -137,11 +137,11 @@ A FUNC form can have any number of `:no-eval' (or `:no-value'), | |||
| 137 | :eval (assoc-string "foo" '(("foo" . "bar") ("zot" "baz")))) | 137 | :eval (assoc-string "foo" '(("foo" . "bar") ("zot" "baz")))) |
| 138 | "Manipulating Alists" | 138 | "Manipulating Alists" |
| 139 | (assoc-delete-all | 139 | (assoc-delete-all |
| 140 | :eval (assoc-delete-all "foo" '(("foo" . "bar") ("zot" . "baz")) #'equal)) | 140 | :eval (assoc-delete-all "b" (list '("a" . a) '("b" . b) '("b" . c)))) |
| 141 | (assq-delete-all | 141 | (assq-delete-all |
| 142 | :eval (assq-delete-all 'foo '((foo . bar) (zot . baz)))) | 142 | :eval (assq-delete-all 2 (list '(1 . a) '(2 . b) '(2 . c)))) |
| 143 | (rassq-delete-all | 143 | (rassq-delete-all |
| 144 | :eval (rassq-delete-all 'bar '((foo . bar) (zot . baz)))) | 144 | :eval (rassq-delete-all 'b (list '(1 . a) '(2 . b) '(2 . c)))) |
| 145 | (alist-get | 145 | (alist-get |
| 146 | :eval (let ((foo '((bar . baz)))) | 146 | :eval (let ((foo '((bar . baz)))) |
| 147 | (setf (alist-get 'bar foo) 'zot) | 147 | (setf (alist-get 'bar foo) 'zot) |
| @@ -705,10 +705,12 @@ A FUNC form can have any number of `:no-eval' (or `:no-value'), | |||
| 705 | :eval (assoc-default 2 '((1 . a) (2 . b) #'=))) | 705 | :eval (assoc-default 2 '((1 . a) (2 . b) #'=))) |
| 706 | (copy-alist | 706 | (copy-alist |
| 707 | :eval (copy-alist '((1 . a) (2 . b)))) | 707 | :eval (copy-alist '((1 . a) (2 . b)))) |
| 708 | (assq-delete-all | ||
| 709 | :eval (assq-delete-all 2 (list '(1 . a) '(2 . b) '(2 . c)))) | ||
| 710 | (assoc-delete-all | 708 | (assoc-delete-all |
| 711 | :eval (assoc-delete-all "b" (list '("a" . a) '("b" . b) '("b" . c)))) | 709 | :eval (assoc-delete-all "b" (list '("a" . a) '("b" . b) '("b" . c)))) |
| 710 | (assq-delete-all | ||
| 711 | :eval (assq-delete-all 2 (list '(1 . a) '(2 . b) '(2 . c)))) | ||
| 712 | (rassq-delete-all | ||
| 713 | :eval (rassq-delete-all 'b (list '(1 . a) '(2 . b) '(2 . c)))) | ||
| 712 | "Property Lists" | 714 | "Property Lists" |
| 713 | (plist-get | 715 | (plist-get |
| 714 | :eval (plist-get '(a 1 b 2 c 3) 'b)) | 716 | :eval (plist-get '(a 1 b 2 c 3) 'b)) |