Current File : //proc/self/root/kunden/usr/share/emacs/27.2/lisp/emacs-lisp/map.elc |
;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.
;;; This file uses dynamic docstrings, first added in Emacs 19.29.
;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(require 'seq)
#@540 Build a `pcase' pattern matching map elements.
ARGS is a list of elements to be matched in the map.
Each element of ARGS can be of the form (KEY PAT), in which case KEY is
evaluated and searched for in the map. The match fails if for any KEY
found in the map, the corresponding PAT doesn't match the value
associated to the KEY.
Each element can also be a SYMBOL, which is an abbreviation of a (KEY
PAT) tuple of the form (\='SYMBOL SYMBOL).
Keys in ARGS not found in the map are ignored, and the match doesn't
fail.
(fn &rest ARGS)
(defalias 'map--pcase-macroexpander #[128 "\300\301\302!BB\207" [and (pred mapp) map--make-pcase-bindings] 5 (#$ . 424)])
(byte-code "\300\301\302\303#\300\304\305\301#\303\207" [define-symbol-prop map--pcase-macroexpander edebug-form-spec nil map pcase-macroexpander] 5)
#@330 Bind the variables in KEYS to the elements of MAP then evaluate BODY.
KEYS can be a list of symbols, in which case each element will be
bound to the looked up value in MAP.
KEYS can also be a list of (KEY VARNAME) pairs, in which case
KEY is an unquoted form.
MAP can be a list, hash-table or array.
(fn KEYS MAP &rest BODY)
(defalias 'map-let '(macro . #[642 "\300\301!DCBB\207" [pcase-let map--make-pcase-patterns] 6 (#$ . 1243)]))
(byte-code "\300\301\302\303#\304\301\305\306#\210\307\310\311\"\207" [function-put map-let lisp-indent-function 2 put edebug-form-spec ((&rest &or symbolp ([form symbolp])) form body) define-error map-not-inplace "Cannot modify map in-place"] 5)
#@13
(fn LIST)
(defalias 'map--plist-p #[257 "\211:\205 \211@<?\207" [] 2 (#$ . 1937)])
(byte-code "\300\301\302\303#\210\304\305\306\305\307\310#\311#\210\312\305\310\307\310\313%\210\314\305\315\316#\317\305\320\321#\207" [put map--plist-p byte-optimizer byte-compile-inline-expand defalias map-elt cl-generic-define (map key &optional default testfn) nil "Lookup KEY in MAP and return its associated value.\nIf KEY is not found, return DEFAULT which defaults to nil.\n\nTESTFN is deprecated. Its default depends on the MAP argument.\n\nIn the base definition, MAP can be an alist, hash-table, or array.\n\n(fn MAP KEY &optional DEFAULT TESTFN)" cl-generic-define-method #[1026 "<\2035 \211:\205 \211@<?\262\203- \300\"\203+ \211\204+ \301\"\204+ \202, \211\207\302\303%\207\304!\203A \305#\207\306!\203\\ \307Y\203Z \310!W\203Z \311\"\207\207\312\313\314!#\207" [plist-get plist-member alist-get nil hash-table-p gethash arrayp 0 seq-length seq-elt error "Unsupported map type `%S': %S" type-of] 10 "\n\n(fn MAP KEY &optional DEFAULT TESTFN)"] function-put gv-expander #[1283 "\300\301D\302\303\304\305\306\n\n\n$\307\"\310\311%\"\207" [gv-get gv-delay-error make-byte-code 514 "\301\304!\203 \211\202 \305\306!\302\304!\203 \211\202 \305\307!\303\304!\203'