Function: keymap--merge-bindings
keymap--merge-bindings is a byte-compiled function defined in
subr.el.gz.
Signature
(keymap--merge-bindings VAL1 VAL2)
Documentation
Merge bindings VAL1 and VAL2.
Source Code
;; Defined in /usr/src/emacs/lisp/subr.el.gz
(defun keymap--merge-bindings (val1 val2)
"Merge bindings VAL1 and VAL2."
(let ((map1 (keymap--menu-item-binding val1))
(map2 (keymap--menu-item-binding val2)))
(if (not (and (keymapp map1) (keymapp map2)))
;; There's nothing to merge: val1 takes precedence.
val1
(let ((map (list 'keymap map1 map2))
(item (if (keymapp val1) (if (keymapp val2) nil val2) val1)))
(keymap--menu-item-with-binding item map)))))