%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/ |
Current File : //usr/local/share/emacs/27.2/lisp/registry.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. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\300\303!\207" [require cl-lib eieio eieio-base] 2) #@45 The current version of the registry format. (defvar registry-db-version 0.2 (#$ . 498)) (byte-code "\300\301\302\303!\"\210\300\304\305\303!\"\210\300\306\304\"\210\307\306\310\311#\210\312\303\313\304#\314\303\315\316\317$\207" [defalias registry-db-p eieio-make-class-predicate registry-db registry-db--eieio-childp eieio-make-child-predicate registry-db-child-p make-obsolete "use (cl-typep ... \\='registry-db) instead" "25.1" define-symbol-prop cl-deftype-satisfies eieio-defclass-internal (eieio-persistent) ((version :initarg :version :initform nil :type (or null float) :documentation "The registry version.") (max-size :initarg :max-size :initform (symbol-value 'most-positive-fixnum) :type integer :custom integer :documentation "The maximum number of registry entries.") (prune-factor :initarg :prune-factor :initform 0.1 :type float :custom float :documentation "Prune to (:max-size * :prune-factor) less\n than the :max-size limit. Should be a float between 0 and 1.") (tracked :initarg :tracked :initform nil :type t :documentation "The tracked (indexed) fields, a list of symbols.") (precious :initarg :precious :initform nil :type t :documentation "The precious fields, a list of symbols.") (tracker :initarg :tracker :type hash-table :documentation "The field tracking hash table.") (data :initarg :data :type hash-table :documentation "The data hash table.")) nil] 6) #@50 Create a new object of class type `registry-db'. (defalias 'registry-db #[(&rest slots) "\301\302\303#\207" [slots apply make-instance registry-db] 4 (#$ . 1894)]) (byte-code "\300\301\302\303#\300\207" [function-put registry-db compiler-macro registry-db--anon-cmacro] 4) (defalias 'registry-db--anon-cmacro #[(whole &rest slots) "@;\204 \207\302\303\304@ @# @\305@DABB\"\207" [slots whole macroexp--warn-and-return format "Obsolete name arg %S to constructor %S" identity] 5]) (byte-code "\300\301\302\303\304\305%\210\300\301\306\307\304\310%\210\300\311\304\312\304\313%\210\300\314\304\315\304\316%\210\300\317\304\320\304\321%\210\300\322\304\323\304\324%\207" [cl-generic-define-method initialize-instance (:before) ((this registry-db) slots) nil #[(this slots) "\303\304\"\205 \305\304\"\211\203 \306 \307\"\205L \310\311\305\312\"#\310\304\n#\211@\312=\2034 AA\2029 \313\312\"\210@\314=\203H AA\315\202L \313\314\")\207" [slots current-version registry-db-version plist-member :version plist-get eql 0.1 plist-put :max-size :max-hard cl--do-remf :max-soft t] 7 "Check whether a registry object needs to be upgraded."] (:after) ((this registry-db) slots) #[(this slots) "\305\n>\204 \306\307\310\311\312\313\314\315\316&#\210)\317\n>?\205- \306\f\320\310\311\321\313\322$#))\207" [this #:object slots #:v #:v :data eieio-oset data make-hash-table :size 10000 :rehash-size 2.0 :test equal :tracker tracker 100 2.0] 10 "Set value of data slot of THIS after initialization."] registry-lookup ((db registry-db) keys) #[(db keys) "\303\301\"\304\305\306\307\n\"\")\207" [db data keys eieio-oref delq nil mapcar #[(k) "\302 \"\205 \302 \"D\207" [k data gethash] 4]] 5 "Search for KEYS in the registry-db DB.\nReturns an alist of the key followed by the entry in a list, not a cons cell."] registry-lookup-breaks-before-lexbind ((db registry-db) keys) #[(db keys) "\306\301\"\307\310\n\310\211:\203, @\311\f \"\203% \f\311\f \"D BA\211\202 \237+\")\207" [db data keys #:--cl-var-- key #:--cl-var-- eieio-oref delq nil gethash] 7 "Search for KEYS in the registry-db DB.\nReturns an alist of the key followed by the entry in a list, not a cons cell."] registry-lookup-secondary ((db registry-db) tracksym &optional create) #[(db tracksym &optional create) "\304\305 \306\"\"\211\203 \n\202, \205, \307\310\311\312\313\314\315\316&\305 \306\"#\210\304\305 \306\"\")\207" [tracksym db h create gethash eieio-oref tracker puthash make-hash-table :size 800 :rehash-size 2.0 :test equal] 10 "Search for TRACKSYM in the registry-db DB.\nWhen CREATE is not nil, create the secondary index hash table if needed."] registry-lookup-secondary-value ((db registry-db) tracksym val &optional set) #[(db tracksym val &optional set) "\204 \304 \n\"\205' \203 \305\306=?\205 \304 \n\306##\210\307\304 \n\"\"\207" [set db tracksym val registry-lookup-secondary puthash t gethash] 7 "Search for TRACKSYM with value VAL in the registry-db DB.\nWhen SET is not nil, set it for VAL (use t for an empty list)."]] 6) (defalias 'registry--match #[(mode entry check-list) "\205N @@@\243\306\203C \n\203C \204C \f\307\267\202; \n\242\310 \"\243\235\202<