Function: map--make-pcase-bindings
map--make-pcase-bindings is a byte-compiled function defined in
map.el.gz.
Signature
(map--make-pcase-bindings ARGS)
Documentation
Return a list of pcase bindings from ARGS to the elements of a map.
Source Code
;; Defined in /usr/src/emacs/lisp/emacs-lisp/map.el.gz
(defun map--make-pcase-bindings (args)
"Return a list of pcase bindings from ARGS to the elements of a map."
(mapcar (if (< emacs-major-version 30)
(lambda (elt)
(cond ((consp elt)
`(app (map--pcase-map-elt ,(car elt) ,(caddr elt))
,(cadr elt)))
((keywordp elt)
(let ((var (intern (substring (symbol-name elt) 1))))
`(app (pcase--flip map-elt ,elt) ,var)))
(t `(app (pcase--flip map-elt ',elt) ,elt))))
(lambda (elt)
(cond ((consp elt)
`(app (map-elt _ ,(car elt) ,(caddr elt))
,(cadr elt)))
((keywordp elt)
(let ((var (intern (substring (symbol-name elt) 1))))
`(app (map-elt _ ,elt) ,var)))
(t `(app (map-elt _ ',elt) ,elt)))))
args))