mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-06 06:20:55 -08:00
Mention caveats in the map-delete doc string
* lisp/emacs-lisp/map.el (map-delete): Mention how this has to be used for lists (bug#25929).
This commit is contained in:
parent
0936bfcd77
commit
756b7cf5d9
1 changed files with 11 additions and 1 deletions
|
|
@ -175,7 +175,17 @@ MAP can be an alist, plist, hash-table, or array."
|
|||
|
||||
(cl-defgeneric map-delete (map key)
|
||||
"Delete KEY in-place from MAP and return MAP.
|
||||
Keys not present in MAP are ignored.")
|
||||
Keys not present in MAP are ignored.
|
||||
|
||||
Note that if MAP is a list (either alist or plist), and you're
|
||||
deleting the final element in the list, the list isn't actually
|
||||
destructively modified (but the return value will reflect the
|
||||
deletion). So if you're using this method on a list, you have to
|
||||
say
|
||||
|
||||
(setq map (map-delete map key))
|
||||
|
||||
for this to work reliably.")
|
||||
|
||||
(cl-defmethod map-delete ((map list) key)
|
||||
;; FIXME: Signal map-not-inplace i.s.o returning a different list?
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue