%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/emacs-lisp/ |
Current File : //usr/local/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' \211\202* \305\310!\300\311 F\312\313\314\315\316 \n$\317\"\320\321%\"=\203Q \211\202X \322DC\"\266\203=\203d \211\202k \322DC\"\266\203=\203w \211\202~ \322DC\"\207" vconcat vector [macroexp-const-p make-symbol "key" "default" "testfn" map-elt make-byte-code 257 "\304\305\306\307\300\302\303\257D\310\301\311\300\302F!DF\207" vconcat vector [condition-case nil with-no-warnings map-put! map-not-inplace map-insert] 10 "\n\n(fn V)" macroexp-let*] 19 "\n\n(fn MGETTER MSETTER)"] 16 "\n\n(fn DO MAP KEY &optional DEFAULT TESTFN)"] set-advertised-calling-convention (map key &optional default) "27.1"] 6) #@283 Associate KEY with VALUE in MAP and return VALUE. If KEY is already present in MAP, replace the associated value with VALUE. When MAP is a list, test equality with TESTFN if non-nil, otherwise use `eql'. MAP can be a list, hash-table or array. (fn MAP KEY VALUE &optional TESTFN) (defalias 'map-put '(macro . #[1027 "\300\301\302\257E\207" [setf map-elt nil] 10 (#$ . 3880)])) (make-obsolete 'map-put "use map-put! or (setf (map-elt ...) ...) instead" "27.1") #@16 (fn MAP KEY) (defalias 'map--plist-delete #[514 "\300:\203A @\232\204 \262\211AA\262\202 \211\203, AA\262\211\211A\241\266\202 =\2046 \301\302!\210AA\262\262\202 \207" [nil cl--assertion-failed (eq tail map)] 7 (#$ . 4353)]) (byte-code "\300\301\302\301\303\304#\305#\210\306\301\304\303\304\307%\207" [defalias map-delete cl-generic-define (map key) nil "Delete KEY in-place from MAP and return MAP.\nNo error is signaled if KEY is not a key of MAP.\nIf MAP is an array, store nil at the index KEY.\n\n(fn MAP KEY)" cl-generic-define-method #[514 "<\203. \211:\205 \211@<?\262\203 \300\"\262\202` \211\236\211\203* \301\"\262\210\202` \302!\203<