%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/progmodes/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/progmodes/elisp-mode.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file contains utf-8 non-ASCII characters,
;;; and so cannot be loaded into Emacs 22 or earlier.
(and (boundp 'emacs-version)
     (< (aref emacs-version (1- (length emacs-version))) ?A)
     (string-lessp emacs-version "23")
     (error "`%s' was compiled for Emacs 23 or later" #$))

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\301\302!\210\301\303!\210\304\305\306\307\310C%\207" [lisp-mode-abbrev-table require cl-generic lisp-mode define-abbrev-table emacs-lisp-mode-abbrev-table nil "Abbrev table for Emacs Lisp mode.\nIt has `lisp-mode-abbrev-table' as its parent." :parents] 6)
#@41 Syntax table used in `emacs-lisp-mode'.
(defvar emacs-lisp-mode-syntax-table (byte-code "\301!\302\303\304#\210\302\305\306#\210\211\207" [lisp--mode-syntax-table make-syntax-table modify-syntax-entry 91 "(]  " 93 ")[  "] 5) (#$ . 678))
#@95 Keymap for Emacs Lisp mode.
All commands in `lisp-mode-shared-map' are inherited by this map.
(defvar emacs-lisp-mode-map (byte-code "\302 \302\303!\302 \302 \302 \304\"\210\305\306\307#\210\305\310\311#\210\305\312\313#\210\314\315\303B#\210\314\316\317#\210\314\320\321#\210\314\322\323#\210\314\324\325B#\210\314\326\327#\210\314\330\331#\210\314\332	#\210\314\333\334#\210\314\335\336#\210\314\337\340B#\210\314\341\342#\210\314\343\344#\210\314\345	#\210\314\346\347#\210\314\350\351#\210\314\352\353#\210\314\354\355#\210\314\356\357#\210\314\360	#\210\314\361\362#\210\314\363\364#\210\314\365\366#\210\314\367\370B#\210\314\371\372#\210\314\373\374#\210\314\375\376#\210\314\377\201@#\210\314\201A\201B#\210\314\201C	#\210\314\201D\201E#\210\314\201F\201G#\210\314\201H\201I#\210\314\201J\201K#\210\314\201L	#\210\314\201M\201N#\210\314\201O\201P#\210\314\201Q\201R#\210\314\201S\201T#\210\314\201U	#\210\314\201V\201W#\210\314\201X\201Y#\210\314\201Z\201[#\210\207" [lisp-mode-shared-map menu-bar-separator make-sparse-keymap "Emacs-Lisp" set-keymap-parent define-key "	" completion-at-point "" eval-defun "" indent-pp-sexp bindings--define-key [menu-bar emacs-lisp] [eldoc] (menu-item "Auto-Display Documentation Strings" eldoc-mode :button (:toggle bound-and-true-p eldoc-mode) :help "Display the documentation string for the item under cursor") [checkdoc] (menu-item "Check Documentation Strings" checkdoc :help "Check documentation strings for style requirements") [re-builder] (menu-item "Construct Regexp" re-builder :help "Construct a regexp interactively") [tracing] "Tracing" [tr-a] (menu-item "Untrace All" untrace-all :help "Untrace all currently traced functions") [tr-uf] (menu-item "Untrace Function..." untrace-function :help "Untrace function, and possibly activate all remaining advice") [tr-sep] [tr-q] (menu-item "Trace Function Quietly..." trace-function-background :help "Trace the function with trace output going quietly to a buffer") [tr-f] (menu-item "Trace Function..." trace-function :help "Trace the function given as an argument") [profiling] "Profiling" [prof-restall] (menu-item "Remove Instrumentation for All Functions" elp-restore-all :help "Restore the original definitions of all functions being profiled") [prof-restfunc] (menu-item "Remove Instrumentation for Function..." elp-restore-function :help "Restore an instrumented function to its original definition") [sep-rem] [prof-resall] (menu-item "Reset Counters for All Functions" elp-reset-all :help "Reset the profiling information for all functions being profiled") [prof-resfunc] (menu-item "Reset Counters for Function..." elp-reset-function :help "Reset the profiling information for a function") [prof-res] (menu-item "Show Profiling Results" elp-results :help "Display current profiling results") [prof-pack] (menu-item "Instrument Package..." elp-instrument-package :help "Instrument for profiling all function that start with a prefix") [prof-func] (menu-item "Instrument Function..." elp-instrument-function :help "Instrument a function for profiling") [sep-natprof] [prof-natprof-stop] (menu-item "Stop Native Profiler" profiler-stop :help "Stop recording profiling information" :enable (and (featurep 'profiler) (profiler-running-p))) [prof-natprof-report] (menu-item "Show Profiler Report" profiler-report :help "Show the current profiler report" :enable (and (featurep 'profiler) (profiler-running-p))) [prof-natprof-start] (menu-item "Start Native Profiler..." profiler-start :help "Start recording profiling information") [lint] "Linting" [lint-di] (menu-item "Lint Directory..." elint-directory :help "Lint a directory") [lint-f] (menu-item "Lint File..." elint-file :help "Lint a file") [lint-b] (menu-item "Lint Buffer" elint-current-buffer :help "Lint the current buffer") [lint-d] (menu-item "Lint Defun" elint-defun :help "Lint the function at point") [edebug-defun] (menu-item "Instrument Function for Debugging" edebug-defun :help "Evaluate the top level form point is in, stepping through with Edebug" :keys "C-u C-M-x") [separator-byte] [disas] (menu-item "Disassemble Byte Compiled Object..." disassemble :help "Print disassembled code for OBJECT in a buffer") [byte-recompile] (menu-item "Byte-recompile Directory..." byte-recompile-directory :help "Recompile every `.el' file in DIRECTORY that needs recompilation") [emacs-byte-compile-and-load] (menu-item "Byte-compile and Load" emacs-lisp-byte-compile-and-load :help "Byte-compile the current file (if it has changed), then load compiled code") [byte-compile] (menu-item "Byte-compile This File" emacs-lisp-byte-compile :help "Byte compile the file containing the current buffer") [separator-eval] [ielm] (menu-item "Interactive Expression Evaluation" ielm :help "Interactively evaluate Emacs Lisp expressions") [eval-buffer] (menu-item "Evaluate Buffer" eval-buffer :help "Execute the current buffer as Lisp code") [eval-region] (menu-item "Evaluate Region" eval-region :help "Execute the region as Lisp code" :enable mark-active) [eval-sexp] (menu-item "Evaluate Last S-expression" eval-last-sexp :help "Evaluate sexp before point; print value in echo area") [separator-format] [comment-region] (menu-item "Comment Out Region" comment-region :help "Comment or uncomment each line in the region" :enable mark-active) [indent-region] (menu-item "Indent Region" indent-region :help "Indent each nonblank line in the region" :enable mark-active) [indent-line] (menu-item "Indent Line" lisp-indent-line)] 10) (#$ . 924))
#@54 Byte compile the file containing the current buffer.
(defalias 'emacs-lisp-byte-compile #[0 "\203\301!\207\302\303!\207" [buffer-file-name byte-compile-file error "The buffer must be saved in a file first"] 2 (#$ . 6518) nil])
#@77 Byte-compile the current file (if it has changed), then load compiled code.
(defalias 'emacs-lisp-byte-compile-and-load #[0 "\204\301\302!\210\303\304!\210\305 \203\306\307\310\311 \"!\203\312 \210\313\314\315\316$\207" [buffer-file-name error "The buffer must be saved in a file first" require bytecomp buffer-modified-p y-or-n-p format "Save buffer %s first? " buffer-name save-buffer byte-recompile-file nil 0 t] 5 (#$ . 6755) nil])
#@70 Macroexpand the form after point.
Comments in the form will be lost.
(defalias 'emacs-lisp-macroexpand #[0 "`\300p!\301!\232\203\302\303!\202(`|\210\304p\"\210n\203$\305\306!\210\307`\"\207" [read macroexpand-1 message "Not a macro call, nothing to expand" pp delete-char -1 indent-region] 6 (#$ . 7205) nil])
(byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313&	\207" [custom-declare-variable emacs-lisp-mode-hook funcall function #[0 "\300\207" [nil] 1] "Hook run when entering Emacs Lisp mode." :options (eldoc-mode imenu-add-menubar-index checkdoc-minor-mode) :type hook :group lisp] 10)
#@67 Set `electric-pair-text-pairs' for all `emacs-lisp-mode' buffers.
(defalias 'emacs-lisp-set-electric-text-pairs #[0 "\301\302\"r\303 \211\203#\211@\211q\210\304\305!\203\306\300!\210A\266\202\202\210)\210\307\310\311\"\207" [electric-pair-text-pairs append ((96 . 39) (8216 . 8217)) buffer-list derived-mode-p emacs-lisp-mode make-local-variable remove-hook electric-pair-mode-hook emacs-lisp-set-electric-text-pairs] 5 (#$ . 7824)])
(defvar emacs-lisp-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [emacs-lisp-mode-hook variable-documentation put "Hook run after entering Emacs-Lisp mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp emacs-lisp-mode-map definition-name emacs-lisp-mode] 4)
(defvar emacs-lisp-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204\303\301\302\304\305!#\210\306\307!\204\303\307\310\311#\210\312\313 !\210\307\302N\204-\303\307\302\304\314!#\210\306\300!\204B\303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P\303\300\302\304\320!#\210\303\311\321\322#\210\303\311\323\324#\207" [emacs-lisp-mode-abbrev-table emacs-lisp-mode-map variable-documentation put purecopy "Keymap for `emacs-lisp-mode'." boundp emacs-lisp-mode-syntax-table definition-name emacs-lisp-mode (lambda (#1=#:def-tmp-var) (defvar emacs-lisp-mode-syntax-table #1#)) make-syntax-table "Syntax table for `emacs-lisp-mode'." (lambda (#1#) (defvar emacs-lisp-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `emacs-lisp-mode'." derived-mode-parent prog-mode custom-mode-group lisp] 5)
#@369 Major mode for editing Lisp code to run in Emacs.
Commands:
Delete converts tabs to spaces as it moves back.
Blank lines separate paragraphs.  Semicolons start comments.

\{emacs-lisp-mode-map}

In addition to any hooks its parent mode `prog-mode' might have run,
this mode runs the hook `emacs-lisp-mode-hook', as the final or penultimate step
during initialization.
(defalias 'emacs-lisp-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315!\204'\316\317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324
\325\"\204R
;=\204R\326
\325;C#\210\327!\210\330\f!\210
;\331\332\211\333#\210\334\335\336\"\210\337\340!\203|\306\340!\210\341\342 \" \202\201\334\343\344\"\210\306\345!\210\307%\332<\346\347\350\351B\352\332$\210\334\353\354\332\307$\210\306\355!\210\356-\334\357\360\332\361$\210\362 \211;\205\263\363!\211;\205\303\364\365\"\206\303=\230\266\202\204\326\334\366\367\332\307$\210\334\366\370\332\307$\210)\371\372!\207" [delay-mode-hooks major-mode mode-name emacs-lisp-mode-map emacs-lisp-mode-syntax-table emacs-lisp-mode-abbrev-table make-local-variable t prog-mode emacs-lisp-mode "Emacs-Lisp" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table lisp-mode-variables nil elisp add-hook after-load-functions elisp--font-lock-flush-elisp-buffers boundp electric-pair-text-pairs append ((96 . 39) (8216 . 8217)) electric-pair-mode-hook emacs-lisp-set-electric-text-pairs electric-quote-string advice--add-function :before-until #[0 "\300\301!\207" [advice--buffer-local eldoc-documentation-function] 2] #[257 "\300\301\"\207" [advice--set-buffer-local eldoc-documentation-function] 4 "\n\n(fn GV--VAL)"] elisp-eldoc-documentation-function xref-backend-functions elisp--xref-backend project-vc-external-roots-function elisp-load-path-roots completion-at-point-functions elisp-completion-at-point local buffer-file-name file-name-nondirectory string-match "\\`\\.#" flymake-diagnostic-functions elisp-flymake-checkdoc elisp-flymake-byte-compile run-mode-hooks emacs-lisp-mode-hook local-abbrev-table imenu-case-fold-search dir-locals-file] 5 (#$ . 9516) nil])
#@23 

(fn &optional FILE)
(defalias 'elisp--font-lock-flush-elisp-buffers #[256 "\203\211\205'\301 \211\205%\211@r\211q\210\302\303!\203\304 \210)A\266\202\202\n\262\207" [load-in-progress buffer-list derived-mode-p emacs-lisp-mode font-lock-flush] 5 (#$ . 11832)])
#@88 Return the vars locally bound around the witness, or nil if not found.

(fn VARS SEXP)
(defalias 'elisp--local-variables-1 #[514 "\211C\300\301\302\303\304\242:\203a\242@\211\305\267\202V\242A\211:\203\275\211@A\211\204`\f\211\f\242@\306=\203P\307!A\211\203O\211@\211\242\206D\211B\262A\266\202\2028\210\310\311!@\243@\"\266\202\262\202\270\312\267\202\262\f#\202\270\f#\202\270\211:\203\236\211@A\211\204\221\310\"\262\202\231	#\266\202\202\270\310\f\311\f\242!@\"\202\270	\300\240\202\270\f\"\266\202\202\320\313=\203\312\300\240\202\320\n	\"\262\202\\\242A\211:\203\374\211@A\211\204\360\n\300\240\262\202\367\f#\266\202\202\n	\"\262\202\\\242A\211:\203D\211@A\211:\2039\211@A\211\204,\310\"\262\2024	#\266\202\202?\f\"\266\202\202J\n	\"\262\202\\\300\240\202\\	\"\262\202r\242\314=\203q\206r\315\202r\300\266\204\211\262\204\215\3161\207\317\242!0\202\211\210\300\240\204\211\262\207" [nil #[771 "\300B\301!@A\"\207" [elisp--local-variables-1 last] 7 "\n\n(fn VARS CATCHES V)"] #[771 "\300\301\302\303\302\304\"\"\"\305!@\"\207" [elisp--local-variables-1 append remq &optional &rest last] 10 "\n\n(fn VARS BODY ARGS)"] #[771 "\211\203\211@\211\242\206\211B\262A\266\202\202\210\300\301!@\"\207" [elisp--local-variables-1 last] 8 "\n\n(fn VARS BODY BINDINGS)"] #[514 "\300\301\242!@\"\207" [elisp--local-variables-1 last] 6 "\n\n(fn VARS SEXP)"] #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (let* 22 let 22 lambda 213 condition-case 263 quote 335)) let* reverse elisp--local-variables-1 last #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (let* 102 let 102 lambda 111 condition-case 121 quote 171)) quote elisp--witness--lisp (nil) (error) butlast] 19 (#$ . 12110)])
#@56 Return a list of locally let-bound variables at point.
(defalias 'elisp--local-variables #[0 "\212\301\302!\210\303 \304\3058@\206`\3068\206`\"\307\3058\211\2031\211@\310!AB\262A\266\202\202\210\311\312\"\262\3131G\314\315Q!@0\202I\210\307\316\317\320\321\322\323!\324\"\325$\216\326\327\330\331#\210\332!*\333\307\"\334\307\335\336\"\"\266\204\266\203)\207" [warning-minimum-log-level skip-syntax-backward "w_" syntax-ppss buffer-substring-no-properties 9 8 nil syntax-after apply string (invalid-read-syntax end-of-file) read-from-string "elisp--witness--lisp" #[642 "\3001\301#0\207\210\207" [(error) apply] 7 "\n\n(fn EXPANDER FORM &rest ARGS)"] make-byte-code 0 "\301\302\300\"\207" vconcat vector [advice-remove macroexpand] 3 :emergency advice-add macroexpand :around macroexpand-all elisp--local-variables-1 delq mapcar #[257 "\2119\205\300\301!\302\"?\205\303!\205\211\207" [string-match symbol-name "\\`[&_]" intern-soft] 4 "\n\n(fn VAR)"]] 12 (#$ . 14034)])
(defvar elisp--local-variables-completion-table (byte-code "\300C\300C\300C\211\301\302\303\304\305\"\306\"\307$\240\210\310\301\311\312\304\305#\313\"\314\315%!\262\207" [nil make-byte-code 0 "\300\302\240\210\303\304\301\242\"\207" vconcat vector [nil remove-hook post-command-hook] 3 completion-table-dynamic 257 "\212\303\304!\210`pB\300\242\232\204!\305\306\302\242\"\210\300\240\210\301\307\310\311 \"\240\210\210)\301\242\207" [skip-syntax-backward "_w" add-hook post-command-hook mapcar symbol-name elisp--local-variables] 6 "\n\n(fn STRING)"] 12))
#@79 Return non-nil if the symbol at point is expected to be a function.

(fn POS)
(defalias 'elisp--expect-function-p #[257 "\211\206`Sf\300=\203\211S\206`Sf\301=\2063\212\302!A@\211\2050\211b\210\303\304!\2050\305\225=\262)\207" [39 35 syntax-ppss looking-at "(\\(cl-\\)?\\(?:callf2?\\|de\\(?:clare-function\\|f\\(?:advice\\|setf\\)\\)\\|function\\)[ 	
\n]+" 0] 4 (#$ . 15620)])
#@109 Return non-nil if the form at POS is not evaluated.
It can be quoted, or be inside a quoted form.

(fn POS)
(defalias 'elisp--form-quoted-p #[257 "\212\300!\3018\206K`\302\3038!B\304\203I\211\204I\211A\262\242b\210\304f\305=\2045\306\304x\210`Sf\307>\203;\310\262\202`Sf\311=\203\304\262\202\262\262)\207" [syntax-ppss 8 reverse 9 nil 91 " " (39 96 8216) t 44] 6 (#$ . 16015)])
#@12 

(fn STR)
(defalias 'elisp--company-doc-buffer #[257 "\301!\302 \303\304\305\306\307!\310\"\311$\216\312\3131V\314!\203$\315!\210\202P\316!\2031\317!\210\202P\320!\203>\321!\210\202P\322!\203K\323!\210\202P\324\325\326\"\210\327 0\202X\210\326*\262\207" [display-buffer-overriding-action intern-soft current-window-configuration make-byte-code 0 "\301\300!\207" vconcat vector [set-window-configuration] 2 (nil (inhibit-switch-frame . t)) (error) fboundp describe-function boundp describe-variable featurep describe-package facep describe-face signal user-error nil help-buffer] 9 (#$ . 16420)])
#@12 

(fn STR)
(defalias 'elisp--company-doc-string #[257 "\300!\301!\203\302\303\"\202\304\305\303#\211;\205%\306\307\"\205%\310\311\"\207" [intern-soft fboundp documentation t documentation-property variable-documentation string-match ".*$" match-string 0] 6 (#$ . 17045)])
#@12 

(fn STR)
(defalias 'elisp--company-location #[257 "\300!\301!\203\302\303\"\202=\304!\203\302\305\"\202=\306!\2033\307\310!\210\311\312\313!!!\314B\202=\315!\205=\302\316\"\207" [intern-soft fboundp find-definition-noselect nil boundp defvar featurep require find-func find-file-noselect find-library-name symbol-name 0 facep defface] 6 (#$ . 17335)])
#@385 Function used for `completion-at-point-functions' in `emacs-lisp-mode'.
If the context at point allows only a certain category of
symbols (e.g. functions, or variables) then the returned
completions are restricted to that category.  In contexts where
any symbol is possible (following a quote, for example),
functions are annotated with "<f>" via the
`:annotation-function' property.
(defalias 'elisp-completion-at-point #[0 "\305 p\306\307\310\311\312\"\313\"\314$\216\315!\210`\3161*\212\317\320!\210\321\322w\210`)0\202,\210\211\211d=\2067\211fz\323\235?\205Y\3241W\212\211b\210\325\320!\210\326\322x\210`Y\205R`)0\202Y\210\206^`Sf\327=\330!\3311\201\212\332\333!\210\320u\210\322fz\334>\205|\335p!)0\202\203\210\322\205'\336\337 8\203\232\206\223`Sf\340>\205'\203\242\203\357\211\341=\203\260\342	\343\344F\202\362\345!\203\305\322	\343\346\347\350\351\352\353\354\257\n\202\362\203\332\322	\343\355\356\357\347\350\351\352\353\354\257\f\202\362\322\360\n\361\362	\363\364$\"\347\350\351\352\353\354\257\202\362\212Sb\210\3651\332\333!\210\320u\210\322f\211\327=\203\327\202\211z\366>\205\335p!\2620\202\210\322\367\370\371\372\267\202\272\342\373\374\375\376\f\322#!\"D\202\355\212\3771F\325\314!\210`	W0\202H\210\322)\203V\342	\343\201@F\202\355\341=\203f\342	\343\201AF\202\355\201B\201C\"\204v\211 \202\355\212Sb\210\327=\203\206\332\333!\210\201D\333!\210\201E\201F!)\203\246\342	\343\363\347\350\351\352\353\354\257\n\202\355\322	\343\346\347\350\351\352\353\354\257\n\202\355 \202\355\201B\201G\"\203\346\212Sb\210\327=\203\325\332\333!\210\201D\333!\210\201E\201F!)\204\353\211 \202\355 \266\203\262)D@\204\377A\202$f\206\201Hz\201I>\203A@\202 \361\201J\201KA@#AAB\244\262\266\206)\207" [emacs-lisp-mode-syntax-table obarray elisp--local-variables-completion-table macro-declarations-alist defun-declarations-alist syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table (scan-error) backward-sexp 1 "`',‘#" nil (32 34 40 41) (scan-error) forward-sexp "'’" 40 elisp--form-quoted-p (error) up-list -1 (119 95) read 8 syntax-ppss (96 8216) ignore-error t :predicate #[257 "\211\300N\207" [error-conditions] 3 "\n\n(fn SYM)"] elisp--expect-function-p fboundp :company-doc-buffer elisp--company-doc-buffer :company-docsig elisp--company-doc-string :company-location elisp--company-location #[257 "\300!\206\301!\206\302!\206\303!\207" [boundp fboundp featurep symbol-plist] 3 "\n\n(fn SYM)"] :annotation-function #[257 "\300\301!!\205	\302\207" [fboundp intern-soft " <f>"] 4 "\n\n(fn STR)"] completion-table-merge apply-partially completion-table-with-predicate boundp strict (error) (119 95) #[0 "\301\302\303\304\305\306\307\310\311\257\n\207" [obarray t :predicate boundp :company-doc-buffer elisp--company-doc-buffer :company-docsig elisp--company-doc-string :company-location elisp--company-location] 10] #[0 "\301\302\303F\207" [obarray t :predicate #[257 "\211\300N\207" [error-conditions] 3 "\n\n(fn SYM)"]] 4] #[0 "\301\302\303\304\305\306\307\310\311\257\n\207" [obarray nil :predicate fboundp :company-doc-buffer elisp--company-doc-buffer :company-docsig elisp--company-doc-string :company-location elisp--company-location] 10] #s(hash-table size 4 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (declare 294 condition-case-unless-debug 309 condition-case 309 ignore-error 437)) mapcar #[257 "\300@!\207" [symbol-name] 3 "\n\n(fn X)"] delete-dups append (error) #[257 "\211\300N\207" [error-conditions] 3 "\n\n(fn SYM)"] #[257 "\211\300N\207" [error-conditions] 3 "\n\n(fn SYM)"] memql (let* let 40) forward-symbol looking-at "\\_<let\\*?\\_>" (let* let 40) 32 (32 62) completion-table-with-terminator " "] 22 (#$ . 17714)])
#@28 

(fn &optional PREDICATE)
(defalias 'lisp-completion-at-point #[256 "\300 \207" [elisp-completion-at-point] 2 (#$ . 21574)])
(make-obsolete 'lisp-completion-at-point 'elisp-completion-at-point "25.1")
(defalias 'elisp--xref-backend #[0 "\300\207" [elisp] 1])
(defvar elisp--xref-format (byte-code "\300\301\302\303\304\305%\210\301\306\307\304\310%\210\211\207" ["(%s %s)" put-text-property 1 3 face font-lock-keyword-face 4 6 font-lock-function-name-face] 7))
(defvar elisp--xref-format-extra (byte-code "\300\301\302\303\304\305%\210\301\306\307\304\310%\210\211\207" ["(%s %s %s)" put-text-property 1 3 face font-lock-keyword-face 4 6 font-lock-function-name-face] 7))
#@254 Return an xref for TYPE SYMBOL in FILE.
TYPE must be a type in `find-function-regexp-alist' (use nil for
'defun).  If SUMMARY is non-nil, use it for the summary;
otherwise build the summary from TYPE and SYMBOL.

(fn TYPE SYMBOL FILE &optional SUMMARY)
(defalias 'elisp--xref-make-xref #[1027 "\301\206\302\206
\303#\304\305$\"\207" [elisp--xref-format xref-make format defun record xref-elisp-location] 11 (#$ . 22258)])
#@294 List of functions to be run from `elisp--xref-find-definitions' to add additional xrefs.
Called with one arg; the symbol whose definition is desired.
Each function should return a list of xrefs, or nil; the first
non-nil result supercedes the xrefs produced by
`elisp--xref-find-definitions'.
(defvar elisp-xref-find-def-functions nil (#$ . 22702))
(cl-generic-define-method 'xref-backend-definitions nil '((_backend (eql elisp)) identifier) nil #[514 "\300\301!\210\302!\211\205\303!\207" [require find-func intern-soft elisp--xref-find-definitions] 5 "\n\n(fn BACKEND IDENTIFIER)"])
#@15 

(fn SYMBOL)
(defalias 'elisp--xref-find-definitions #[257 "\305\204\211\203\306\211A\262\242!\"\262\202\210\211\2049\203UK\203UK9\203U\307!K\310\311\"\211\203F\312\305#B\262\203S\312\313#B\262\266\314!\203m\310\315\"\211\203l\312\315#B\262\210\316!\203\260\310\211K\"\305\211\203\256\317=\203\226\312\305\320K\321\"#B\262\202\256\322\323\"\211\262\203\321\324\325\"\203\321\326\327\"\330!\310\331\"\332	\333\334P\335\336
!\337Q$\312\331$B\262\266\202\256\340N\211\262\203\244\341!\n>\204\351\342\343\340D\"\210\344H\211\203\205\211@\345!\341!>\204\342\343\346D\"\210\327H\305\347\n\341!>\204\342\343\346D\"\210\350H#\310\351\"\211\203=\211@\2064\211\323=?\262A\266\202\202&\210\211\203|\204L\3508\203|\203i\332	\351A@$\312\351$\fB\262\f\210\202|\332	\351\352$\312\351$\fB\262\f\210\266A\266\202\202\354\210\322\323\"\211\262\203\227\324\353\"\204\256\312\354#B\262\202\256\312\305#B\262\266\355!\203\372\310\356\"\211\203\371\211\317=\203\324\312\356\320\357\"#B\262\202\371\360\361\362#\363\230\203\352\312\356#B\262\202\371\f>\204\371\312\356#B\262\210\364!\203\3651
\366\336!!0\202\210\305\211\203\312\367#B\262\210\211\207" [elisp-xref-find-def-functions elisp--xref-format-extra cl-struct-cl--generic-tags cl-struct-cl--generic-method-tags minor-mode-list nil append symbol-file find-lisp-object-file-name defun elisp--xref-make-xref defalias facep defface fboundp C-source help-C-file-name subr documentation t string-match "Constructor for objects of type `\\(.*\\)'" match-string 1 intern define-type format cl-defstruct "(" "(:constructor " symbol-name "))" cl--generic type-of signal wrong-type-argument 3 cl--generic-method-info cl--generic-method cl--generic-load-hist-format 2 cl-defmethod "()" "\n\n(fn ARG &rest ARGS)" cl-defgeneric boundp defvar var substring 0 4 "src/" featurep (error) find-library-name feature] 18 (#$ . 23297)])
(cl-generic-define-method 'xref-backend-apropos nil '((_backend (eql elisp)) regexp) nil #[514 "\300\301\302\303!\211\203\211@\304!B\262A\266\202\202\210\211\237\262\"\207" [apply nconc nil apropos-internal elisp--xref-find-definitions] 9 "\n\n(fn BACKEND REGEXP)"])
(defvar elisp--xref-identifier-completion-table (apply-partially 'completion-table-with-predicate obarray #[257 "\300!\206\301!\206\302!\206\303!\207" [boundp fboundp featurep facep] 3 "\n\n(fn SYM)"] 'strict))
(cl-generic-define-method 'xref-backend-identifier-completion-table nil '((_backend (eql elisp))) nil #[257 "\207" [elisp--xref-identifier-completion-table] 2 "\n\n(fn BACKEND)"])
#@78 compiler-macro for inlining `xref-elisp-location-p'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'xref-elisp-location-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block xref-elisp-location-p (and (memq (type-of cl-x) cl-struct-xref-elisp-location-tags) t)) nil] 9 (#$ . 26023)])
(put 'xref-elisp-location-p 'compiler-macro 'xref-elisp-location-p--cmacro)
#@13 

(fn CL-X)
(defalias 'xref-elisp-location-p #[257 "\301!>\205	\302\207" [cl-struct-xref-elisp-location-tags type-of t] 3 (#$ . 26412)])
(byte-code "\300\301\302\303#\304\305\306\301#\207" [function-put xref-elisp-location-p side-effect-free error-free put xref-elisp-location cl-deftype-satisfies] 5)
#@83 compiler-macro for inlining `xref-elisp-location-symbol'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'xref-elisp-location-symbol--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block xref-elisp-location-symbol (progn (or (xref-elisp-location-p cl-x) (signal 'wrong-type-argument (list 'xref-elisp-location cl-x))) (aref cl-x 1))) nil] 9 (#$ . 26723)])
(put 'xref-elisp-location-symbol 'compiler-macro 'xref-elisp-location-symbol--cmacro)
#@71 Access slot "symbol" of `xref-elisp-location' struct CL-X.

(fn CL-X)
(defalias 'xref-elisp-location-symbol #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-xref-elisp-location-tags type-of signal wrong-type-argument xref-elisp-location 1] 5 (#$ . 27191)])
(byte-code "\300\301\302\303#\300\207" [function-put xref-elisp-location-symbol side-effect-free t] 4)
#@81 compiler-macro for inlining `xref-elisp-location-type'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'xref-elisp-location-type--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block xref-elisp-location-type (progn (or (xref-elisp-location-p cl-x) (signal 'wrong-type-argument (list 'xref-elisp-location cl-x))) (aref cl-x 2))) nil] 9 (#$ . 27575)])
(put 'xref-elisp-location-type 'compiler-macro 'xref-elisp-location-type--cmacro)
#@69 Access slot "type" of `xref-elisp-location' struct CL-X.

(fn CL-X)
(defalias 'xref-elisp-location-type #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-xref-elisp-location-tags type-of signal wrong-type-argument xref-elisp-location 2] 5 (#$ . 28033)])
(byte-code "\300\301\302\303#\300\207" [function-put xref-elisp-location-type side-effect-free t] 4)
#@81 compiler-macro for inlining `xref-elisp-location-file'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'xref-elisp-location-file--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block xref-elisp-location-file (progn (or (xref-elisp-location-p cl-x) (signal 'wrong-type-argument (list 'xref-elisp-location cl-x))) (aref cl-x 3))) nil] 9 (#$ . 28411)])
(put 'xref-elisp-location-file 'compiler-macro 'xref-elisp-location-file--cmacro)
#@69 Access slot "file" of `xref-elisp-location' struct CL-X.

(fn CL-X)
(defalias 'xref-elisp-location-file #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-xref-elisp-location-tags type-of signal wrong-type-argument xref-elisp-location 3] 5 (#$ . 28869)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put xref-elisp-location-file side-effect-free t defalias copy-xref-elisp-location copy-sequence] 4)
#@104 compiler-macro for inlining `make-xref-elisp-location'.

(fn CL-WHOLE &cl-quote &key SYMBOL TYPE FILE)
(defalias 'make-xref-elisp-location--cmacro #[385 "\300\301\"A@\300\302\"A@\300\303\"A@\211\203=\211@\304>\203&\211AA\262\202\305>A@\2034\306\262\202\307\310@\"\210\202\210\311\312\313\306\306&\207" [plist-member :symbol :type :file (:symbol :type :file :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:symbol :type :file)" cl--defsubst-expand (symbol type file) (cl-block make-xref-elisp-location (record 'xref-elisp-location symbol type file))] 14 (#$ . 29306)])
(put 'make-xref-elisp-location 'compiler-macro 'make-xref-elisp-location--cmacro)
#@84 Constructor for objects of type `xref-elisp-location'.

(fn &key SYMBOL TYPE FILE)
(defalias 'make-xref-elisp-location #[128 "\300\301\"A@\300\302\"A@\300\303\"A@\211\203=\211@\304>\203&\211AA\262\202\305>A@\2034\306\262\202\307\310@\"\210\202\210\311\312$\207" [plist-member :symbol :type :file (:symbol :type :file :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:symbol :type :file)" record xref-elisp-location] 9 (#$ . 30020)])
(byte-code "\300\301\302\303#\300\207" [function-put make-xref-elisp-location side-effect-free t] 4)
#@93 compiler-macro for inlining `xref-make-elisp-location'.

(fn CL-WHOLE-ARG SYMBOL TYPE FILE)
(defalias 'xref-make-elisp-location--cmacro #[1028 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (symbol type file) (cl-block xref-make-elisp-location (record 'xref-elisp-location symbol type file)) nil] 13 (#$ . 30611)])
(put 'xref-make-elisp-location 'compiler-macro 'xref-make-elisp-location--cmacro)
#@79 Constructor for objects of type `xref-elisp-location'.

(fn SYMBOL TYPE FILE)
(defalias 'xref-make-elisp-location #[771 "\300\301$\207" [record xref-elisp-location] 8 (#$ . 31027)])
(byte-code "\300\301\302\303#\304\305\306\307\310\311\312\313\305\303&	\210\314\315\311\316\311\317%\210\314\320\311\321\311\322%\207" [function-put xref-make-elisp-location side-effect-free t cl-struct-define xref-elisp-location "Location of an Emacs Lisp symbol definition." cl-structure-object record nil ((cl-tag-slot) (symbol) (type) (file)) cl-struct-xref-elisp-location-tags cl-generic-define-method xref-location-marker ((l xref-elisp-location)) #[257 "\211\300H\301H\302H\211\303#r\211@q\210\212\211A\206eb\210\304 *\262\266\203\207" [1 2 3 find-function-search-for-symbol point-marker] 11 "\n\n(fn L)"] xref-location-group ((l xref-elisp-location)) #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-xref-elisp-location-tags type-of signal wrong-type-argument xref-elisp-location 3] 5 "\n\n(fn L)"]] 11)
(defalias 'elisp-load-path-roots #[0 "\302\300!\203\n	B\207	\207" [package-user-dir load-path boundp] 2])
#@101 Keymap for Lisp Interaction mode.
All commands in `lisp-mode-shared-map' are inherited by this map.
(defvar lisp-interaction-mode-map (byte-code "\301 \301\302!\303\"\210\304\305\306#\210\304\307\310#\210\304\311\312#\210\304\313\314#\210\315\316\302B#\210\315\317\320#\210\315\321\322#\210\315\323\324#\210\315\325\326#\210\315\327\330#\210\207" [lisp-mode-shared-map make-sparse-keymap "Lisp-Interaction" set-keymap-parent define-key "" eval-defun "" indent-pp-sexp "	" completion-at-point "\n" eval-print-last-sexp bindings--define-key [menu-bar lisp-interaction] [eval-defun] (menu-item "Evaluate Defun" eval-defun :help "Evaluate the top-level form containing point, or after point") [eval-print-last-sexp] (menu-item "Evaluate and Print" eval-print-last-sexp :help "Evaluate sexp before point; print value into current buffer") [edebug-defun-lisp-interaction] (menu-item "Instrument Function for Debugging" edebug-defun :help "Evaluate the top level form point is in, stepping through with Edebug" :keys "C-u C-M-x") [indent-pp-sexp] (menu-item "Indent or Pretty-Print" indent-pp-sexp :help "Indent each line of the list starting just after point, or prettyprint it") [complete-symbol] (menu-item "Complete Lisp Symbol" completion-at-point :help "Perform completion on Lisp symbol preceding point")] 7) (#$ . 32167))
(defvar lisp-interaction-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [lisp-interaction-mode-hook variable-documentation put "Hook run after entering Lisp Interaction mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp lisp-interaction-mode-map definition-name lisp-interaction-mode] 4)
(defvar lisp-interaction-mode-map (make-sparse-keymap))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\311\312 !\210\306\301N\204-\302\306\301\303\313!#\210\302\310\314\315#\207" [lisp-interaction-mode-map variable-documentation put purecopy "Keymap for `lisp-interaction-mode'." boundp lisp-interaction-mode-syntax-table definition-name lisp-interaction-mode (lambda (#1=#:def-tmp-var) (defvar lisp-interaction-mode-syntax-table #1#)) make-syntax-table "Syntax table for `lisp-interaction-mode'." derived-mode-parent emacs-lisp-mode] 5)
#@647 Major mode for typing and evaluating Lisp forms.
Like Lisp mode except that \[eval-print-last-sexp] evals the Lisp expression
before point, and prints its value into the buffer, advancing point.
Note that printing is controlled by `eval-expression-print-length'
and `eval-expression-print-level'.

Commands:
Delete converts tabs to spaces as it moves back.
Paragraphs are separated only by blank lines.
Semicolons start comments.

\{lisp-interaction-mode-map}

In addition to any hooks its parent mode `emacs-lisp-mode' might have run,
this mode runs the hook `lisp-interaction-mode-hook', as the final or penultimate step
during initialization.
(defalias 'lisp-interaction-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315!\204'\316\317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324!\210\325\f!\210\306\305!\210\307)\326\327!\207" [delay-mode-hooks major-mode mode-name lisp-interaction-mode-map lisp-interaction-mode-syntax-table lexical-binding make-local-variable t emacs-lisp-mode lisp-interaction-mode "Lisp Interaction" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table use-local-map set-syntax-table run-mode-hooks lisp-interaction-mode-hook] 5 (#$ . 34539) nil])
#@59 Regular expression matching a dynamic doc string comment.
(defconst emacs-lisp-byte-code-comment-re "\\(#\\)@\\([0-9]+\\) \\(?:[^(]\\|([^\"]\\)" (#$ . 35874))
#@101 Try to syntactically mark the #@NNN ....^_ docstrings in byte-code files.

(fn END &optional POINT)
(defalias 'elisp--byte-code-comment #[513 "\301 \3028\205z\3038f\304=\205z\212\3038b\210\305!\205\"\306\307\310!!)\211\205x\310\225\311!\211\\b\210\312\311`!#\211\313U?\205_\211V\203J\262\211[u\210\211\313V\203X\211\202\\S\314]\262\315\262\2042\266`X\203v\316`S`\317\320$\202xb\266\202\207" [emacs-lisp-byte-code-comment-re syntax-ppss 4 8 35 looking-at string-to-number match-string 2 position-bytes - 0 1 t put-text-property syntax-table (2097164)] 11 (#$ . 36040)])
#@18 

(fn START END)
(defalias 'elisp-byte-code-syntax-propertize #[514 "b\210\300`\"\210b\210`W\2051\301\302\303#\2051\304\224\203
\305\304\224\304\225\306\307$\210\300`\"\210\202
\207" [elisp--byte-code-comment re-search-forward "\\(#\\)@\\([0-9]+\\) \\(?:[^(]\\|([^\"]\\)" t 1 put-text-property syntax-table (2097163)] 9 (#$ . 36645)])
(add-to-list 'auto-mode-alist '("\\.elc\\'" . elisp-byte-code-mode))
(defvar elisp-byte-code-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [elisp-byte-code-mode-hook variable-documentation put "Hook run after entering Elisp-Byte-Code mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp elisp-byte-code-mode-map definition-name elisp-byte-code-mode] 4)
(defvar elisp-byte-code-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204\303\301\302\304\305!#\210\306\307!\204\303\307\310\311#\210\312\313 !\210\307\302N\204-\303\307\302\304\314!#\210\306\300!\204B\303\300\310\311#\210\315\316\300\317\"\210!\210\300\302N\204P\303\300\302\304\320!#\210\303\311\321\322#\207" [elisp-byte-code-mode-abbrev-table elisp-byte-code-mode-map variable-documentation put purecopy "Keymap for `elisp-byte-code-mode'." boundp elisp-byte-code-mode-syntax-table definition-name elisp-byte-code-mode (lambda (#1=#:def-tmp-var) (defvar elisp-byte-code-mode-syntax-table #1#)) make-syntax-table "Syntax table for `elisp-byte-code-mode'." (lambda (#1#) (defvar elisp-byte-code-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `elisp-byte-code-mode'." derived-mode-parent emacs-lisp-mode] 5)
#@243 Major mode for *.elc files.

In addition to any hooks its parent mode `emacs-lisp-mode' might have run,
this mode runs the hook `elisp-byte-code-mode-hook', as the final or penultimate step
during initialization.

\{elisp-byte-code-mode-map}
(defalias 'elisp-byte-code-mode #[0 "\306\300!\210\307\310 \210\311\312\310\313N\203\314\311\313\310\313N#\210\315!\204'\316\317 \"\210\320\f!\211\2035\211\321 =\203;\322\f\323 \"\210\210\324
\325\"\204R
=\204R\326
\325C#\210\327!\210\330\f!\210
\306\331!\210\332\306\333!\210\334)\335\336!\207" [delay-mode-hooks major-mode mode-name elisp-byte-code-mode-map elisp-byte-code-mode-syntax-table elisp-byte-code-mode-abbrev-table make-local-variable t emacs-lisp-mode elisp-byte-code-mode "Elisp-Byte-Code" mode-class put keymap-parent set-keymap-parent current-local-map char-table-parent standard-syntax-table set-char-table-parent syntax-table abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table open-paren-in-column-0-is-defun-start nil syntax-propertize-function elisp-byte-code-syntax-propertize run-mode-hooks elisp-byte-code-mode-hook local-abbrev-table] 5 (#$ . 38347) nil])
#@587 Evaluate sexp before point; print value into current buffer.

Normally, this function truncates long output according to the value
of the variables `eval-expression-print-length' and
`eval-expression-print-level'.  With a prefix argument of zero,
however, there is no such truncation.  Such a prefix argument
also causes integers to be printed in several additional formats
(octal, hexadecimal, and character).

If `eval-expression-debug-on-error' is non-nil, which is the default,
this command arranges for all errors to enter the debugger.

(fn &optional EVAL-LAST-SEXP-ARG-INTERNAL)
(defalias 'eval-print-last-sexp #[256 "p\301 \210\302\206\303!\210\301 )\207" [standard-output terpri eval-last-sexp t] 3 (#$ . 39523) "P"])
#@290 Set up text properties for the output of `elisp--eval-last-sexp'.
BEG and END are the start and end of the output in current-buffer.
VALUE is the Lisp value printed, ALT1 and ALT2 are strings for the
alternative printed representations that can be displayed.

(fn BEG END VALUE ALT1 ALT2)
(defalias 'last-sexp-setup-props #[1285 "\300 \301\302\303#\210\301\304\305#\210\301\306\303#\210\307\310E\311\312\313\314BBBBBB#\207" [make-sparse-keymap define-key "
" elisp-last-sexp-toggle-display [down-mouse-2] mouse-set-point [mouse-2] add-text-properties printed-value mouse-face highlight keymap (help-echo "RET, mouse-2: toggle abbreviated display" rear-nonsticky (mouse-face keymap help-echo printed-value))] 16 (#$ . 40261)])
#@91 Toggle between abbreviated and unabbreviated printed representations.

(fn &optional ARG)
(defalias 'elisp-last-sexp-toggle-display #[256 "\214~\210\301`\302\"\211\205L\303d`T^\302\"\206`\304`\302\"\206`p`|\210A@c\210U\2045`S\262\305`@\306	8	A@%\210d^b)\266\204\262)\207" [standard-output get-text-property printed-value previous-single-property-change next-single-char-property-change last-sexp-setup-props 2] 12 (#$ . 41008) "P"])
#@128 Return a string representing CHAR as a character rather than as an integer.
If CHAR is not a character, return nil.

(fn CHAR)
(defalias 'prin1-char #[257 "\211\250\205o\301!\205o\302!\303!\304\305>\2033\306\307\"\310U\2033\304\311\211\226\")\2043\226\262\304\262\3121Z\313\314\315\316#\317\267\202O\320\321\"\202R\322\202R\320!Q\211\2620\202^\210\202_\210\211\205m\323!@U\205m\211\266\203\207" [case-fold-search eventp event-basic-type event-modifiers nil shift logand 33554432 0 char-equal (error) "?" mapconcat #[257 "\211\300=\203\301\207\302\303\304!\305H\226\306#\207" [super "\\s-" string 92 symbol-name 0 45] 5 "\n\n(fn MODIF)"] "" #s(hash-table size 11 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (59 67 40 67 41 67 123 67 125 67 91 67 93 67 34 67 39 67 92 67 127 75)) string 92 "\\C-?" read-from-string] 9 (#$ . 41469)])
#@31 Return sexp before the point.
(defalias 'elisp--preceding-sexp #[0 "`\302\303\212\304 p\305\306\307\310\311\"\312\"\313$\216\314!\210h\315=\203)\316u\210`\262\2028g\317=\2045h\317=\2038\320\262h\321U\203_\212\316u\210\322\323!\210\324u\210\325\326\327!)\262\205V`)\211\203^\211b\210\210\330\316!\210h\331=\203u\316u\210h\332=\203u\316u\210`eTV\203\210\333\334`\313Z\"\203\210\335u\210h\336=\203\243\303\212\337\303x\210\327\340!\262)\211\203\242\330\316!\210\210\214g=\203\255\303u\210\327\341!\203\267\306\225b\210e}\210\342p!\262\242\343=\203\322\344\345\346\347BBBD\262*\266\202)\207" [emacs-lisp-mode-syntax-table inhibit-changing-match-data 8216 nil syntax-table make-byte-code 0 "r\301q\210\302\300!)\207" vconcat vector [set-syntax-table] 2 set-syntax-table 8217 -1 39 96 125 skip-syntax-backward "w-" -3 "\\\\N{" t looking-at forward-sexp 92 63 looking-back "#s" -2 61 "0-9#=" "\\(#[0-9]+=\\)+" ",@?" read interactive call-interactively lambda (&rest args) (args)] 12 (#$ . 42360)])
(byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias preceding-sexp elisp--preceding-sexp nil make-obsolete "25.1"] 4)
#@352 Evaluate sexp before point; print value in the echo area.
If EVAL-LAST-SEXP-ARG-INTERNAL is non-nil, print output into
current buffer.  If EVAL-LAST-SEXP-ARG-INTERNAL is `0', print
output with no limit on the length and level of lists, and
include additional formats for integers (octal, hexadecimal, and
character).

(fn EVAL-LAST-SEXP-ARG-INTERNAL)
(defalias 'elisp--eval-last-sexp #[257 "\301!\211@A\211@A\211@A\302\303\304\305\306 !!\"\203%p\202&\307$\266\203\207" [lexical-binding eval-expression-get-print-arguments elisp--eval-last-sexp-print-value eval macroexpand-all eval-sexp-add-defvars elisp--preceding-sexp t] 16 (#$ . 43524)])
#@60 

(fn VALUE OUTPUT &optional NO-TRUNCATE CHAR-PRINT-LIMIT)
(defalias 'elisp--eval-last-sexp-print-value #[1026 "\305\211\306!*?\205?\205\f`\305\307\"\205(\310!\211\2032\311	\"\210\210`\262\312!\203]	\204E\203]\313\"\230\204]\314\n\313\"%\210+\207" [print-level print-length eval-expression-print-maximum-character eval-expression-print-length eval-expression-print-level nil prin1-to-string prin1 eval-expression-print-format princ bufferp buffer-substring-no-properties last-sexp-setup-props] 16 (#$ . 44187)])
(defvar elisp--eval-last-sexp-fake-value (make-symbol "t"))
#@170 Prepend EXP with all the `defvar's that precede it in the buffer.
POS specifies the starting position where EXP was found and defaults to point.

(fn EXP &optional POS)
(defalias 'eval-sexp-add-defvars #[513 "\204\207\212\211\204`\262\301eb\210\302\303\304#\2039\305\306\307!!\310!\2045\311\212\312\313\224!)!\2045\211B\262\210\202\314\315\316\317\"C\"B\262)\207" [lexical-binding nil re-search-forward "(def\\(?:var\\|const\\|custom\\)[ 	\n]+\\([^; '()\n	]+\\)" t intern match-string 1 special-variable-p syntax-ppss-toplevel-pos syntax-ppss 0 progn append mapcar #[257 "\300D\207" [defvar] 3 "\n\n(fn V)"]] 8 (#$ . 44811)])
#@780 Evaluate sexp before point; print value in the echo area.
Interactively, with a non `-' prefix argument, print output into
current buffer.

Normally, this function truncates long output according to the
value of the variables `eval-expression-print-length' and
`eval-expression-print-level'.  With a prefix argument of zero,
however, there is no such truncation.
Integer values are printed in several formats (decimal, octal,
and hexadecimal).  When the prefix argument is -1 or the value
doesn't exceed `eval-expression-print-maximum-character', an
integer value is also printed as a character of that codepoint.

If `eval-expression-debug-on-error' is non-nil, which is the default,
this command arranges for all errors to enter the debugger.

(fn EVAL-LAST-SEXP-ARG-INTERNAL)
(defalias 'eval-last-sexp #[257 "\204\303!\207	\303!\n)B\211A	=\204\211A\211@\207" [eval-expression-debug-on-error elisp--eval-last-sexp-fake-value debug-on-error elisp--eval-last-sexp] 4 (#$ . 45464) "P"])
#@235 Treat some expressions specially.
Reset the `defvar' and `defcustom' variables to the initial value.
(For `defcustom', use the :set function if there is one.)
Reinitialize the face according to the `defface' specification.

(fn FORM)
(defalias 'elisp--eval-defun-1 #[257 "\211<\204\207\211@\302=\2031\211\243\243\2031\303A@!\2031\304\302A@\305\306\233BBB\307A@\3108EE\207\211@\311=\203p\312\313A@\"!\203p\314>\211\203X\211\243\242\262\315!\204X\305\262\211\206]\316\313A@\"\313\211\3108\"!\"\266\207\211@\317=\203\220\313A@\"\320	\"\321\322\305#\210\321\323\305#\266\207\211@\304=\203\237\304\324\325A\"B\207\207" [lexical-binding face-new-frame-defaults defvar boundp progn nil 3 setq-default 2 custom-declare-variable default-boundp eval :set functionp set-default custom-declare-face assq-delete-all put face-defface-spec face-override-spec mapcar elisp--eval-defun-1] 8 (#$ . 46466)])
#@366 Evaluate defun that point is in or before.
The value is displayed in the echo area.
If the current defun is actually a call to `defvar',
then reset the variable using the initial value expression
even if the variable already has some other value.
(Normally `defvar' does not change the variable's value
if it already has a value.)

Return the result of evaluation.
(defalias 'elisp--eval-defun #[0 "	\n\212\306\307\211C\307\212\310 \210\311 \210`\262\312p!\262`\240\210)\313\314\315!!!\316\242\317\320\321\322\323\n\"\324\"\325\326%$\266)\266,\327@!\211\203S\330!\210\210@\207" [eval-expression-debug-on-error eval-expression-print-length eval-expression-print-level print-level print-length debug-on-error t nil end-of-defun beginning-of-defun read eval-sexp-add-defvars elisp--eval-defun-1 macroexpand eval-region make-byte-code 257 "\300\242b\210\301\207" vconcat vector [] 2 "\n\n(fn IGNORE)" eval-expression-print-format princ standard-output values] 16 (#$ . 47399)])
#@1137 Evaluate the top-level form containing point, or after point.

If the current defun is actually a call to `defvar' or `defcustom',
evaluating it this way resets the variable using its initial value
expression (using the defcustom's :set function if there is one), even
if the variable already has some other value.  (Normally `defvar' and
`defcustom' do not alter the value if there already is one.)  In an
analogous way, evaluating a `defface' overrides any customizations of
the face, so that it becomes defined exactly as the `defface' expression
says.

If `eval-expression-debug-on-error' is non-nil, which is the default,
this command arranges for all errors to enter the debugger.

With a prefix argument, instrument the code for Edebug.

If acting on a `defun' for FUNCTION, and the function was
instrumented, `Edebug: FUNCTION' is printed in the echo area.  If not
instrumented, just FUNCTION is printed.

If not acting on a `defun', the result of evaluation is displayed in
the echo area.  This display is controlled by the variables
`eval-expression-print-length' and `eval-expression-print-level',
which see.

(fn EDEBUG-IT)
(defalias 'eval-defun #[257 "\211\203
\304\305!\210\306?!\207	\204\307 \207\310\211\n\307 \262\262)\n=\204(\207" [edebug-all-defs eval-expression-debug-on-error elisp--eval-last-sexp-fake-value debug-on-error require edebug eval-defun elisp--eval-defun nil] 5 (#$ . 48407) "P"])
#@278 Bookkeeping; elements are as follows:
  0 - contains the last symbol read from the buffer.
  1 - contains the string last displayed in the echo area for variables,
      or argument string for functions.
  2 - `function' if function args, `variable' if variable documentation.
(defvar elisp--eldoc-last-data (make-vector 3 nil) (#$ . 49841))
#@60 `eldoc-documentation-function' (which see) for Emacs Lisp.
(defalias 'elisp-eldoc-documentation-function #[0 "\300 \301 \211\204\f\302\202*@=\203 \303\304\"\206*\305!\202*\305!\206*\303\304\"\207" [elisp--current-symbol elisp--fnsym-in-current-sexp nil apply elisp-get-fnsym-args-string elisp-get-var-docstring] 5 (#$ . 50189)])
#@207 Return a string containing the parameter list of the function SYM.
If SYM is a subr and no arglist is obtainable from the docstring
or elsewhere, return a 1-line docstring.

(fn SYM &optional INDEX PREFIX)
(defalias 'elisp-get-fnsym-args-string #[769 "\2039\203\302!\204\303\202g\304H=\203)\305H\306=\203)\307H\202g\310\311!	\312#\303<\203:\202]\313\3141H\315\312\"0\202J\210\303\"\211\262\203Z\316@!\202]\317!\320\321!\306#\266\203\211\205\211\322\206\210\323\324	!\325\326!\203\204\327\202\205\330#\331P$\207" [elisp--eldoc-last-data advertised-signature-table fboundp nil 0 2 function 1 gethash indirect-function t help-split-fundoc (invalid-function) documentation substitute-command-keys help-function-arglist elisp--last-data-store elisp-function-argstring elisp--highlight-function-argument propertize symbol-name face functionp font-lock-function-name-face font-lock-keyword-face ": "] 13 (#$ . 50537)])
#@154 Highlight argument INDEX in ARGS list for function SYM.
In the absence of INDEX, just call `eldoc-docstring-format-sym-doc'.

(fn SYM ARGS INDEX PREFIX)
(defalias 'elisp--highlight-function-argument #[1028 "\302\303\304\305\306\307!\"\310\235A\211\203\325GGZY\203\325\302\211\311\n!\312\313!\212\314\302\313#\2052\303\225)\203E\315\316\"\203E\317\320\"\202e\212\302\314\321\313#\205b\307\322\320!\323\313#\262\211@A\203b\313\262\262)\211;\205}\205}\211\226\235?\205}\324!@\226\203\322\230\204\322\203\254\212\325\326\327 \313#)\204\254\315\330\"\203\254\302\262
\320\224\262\320\225\262\n\202\322\203\322\315\331\226\332Q\"\204\307\315\331\332Q\"\203\322\302\262
\303\224\262\303\225\262\n)\266\203}\320Y\203}\315\333	#\203k\303\224\262\303\225\262\322\303	\"\211\334\230\203\320\262\202g\211\335\230\204g\211\336\230\204g\337\302\313\315#)\266\203\203)\211\324!@\230\204\\\337\317\n\320\fGS#\302\313\315#)\266\203\203b\340\341\"G\342U\203b\320V\203b\343\320\"\320=\203b\303\262\202gS\262\210\202\325G\262S\262\344\262\303\262\202\325\203\225\345	!\262\346\347D$\210\350\"\262\211\262\207" [case-fold-search inhibit-changing-match-data nil 0 eldoc-highlight-function-argument mapcar #[257 "\300\301\302#\207" [replace-regexp-in-string "\\`[(]\\|[)]\\'" ""] 5 "\n\n(fn X)"] split-string "&key" symbol-name current-word t re-search-backward string-match ":\\([^ ()]*\\)" substring 1 ":\\([^ ()\n]*\\)" match-string " " last re-search-forward ":.*" point-at-eol "&rest \\([^ ()]*\\)" "\\_<" "\\_>" "[^ ()]+" "&rest" "&optional" "&allow-other-keys" "\\.\\.\\.\\'" remove "..." 2 logand font-lock-warning-face copy-sequence add-text-properties face eldoc-docstring-format-sym-doc] 20 (#$ . 51503)])
#@12 

(fn SYM)
(defalias 'elisp-get-var-docstring #[257 "\211\204\301\207\211\302H=\203\303H\304=\203\305H\207\306\307\310#\211\2051\311\312!\313#\314\304#\262\207" [elisp--eldoc-last-data nil 0 2 variable 1 documentation-property variable-documentation t eldoc-docstring-format-sym-doc elisp--docstring-first-line font-lock-variable-name-face elisp--last-data-store] 7 (#$ . 53337)])
#@24 

(fn SYMBOL DOC TYPE)
(defalias 'elisp--last-data-store #[771 "\301I\210\302I\210\303I\210\207" [elisp--eldoc-last-data 0 1 2] 6 (#$ . 53740)])
#@12 

(fn DOC)
(defalias 'elisp--docstring-first-line #[257 "\211;\205E\300\301 \302\303\304\305\306!\307\"\310$\216\311\312\"\203 \303\225\202!\303\311\313\"\2031\314\303\224#\202?\211\303U\203;\202?\314\"\262)\262!\207" [substitute-command-keys match-data make-byte-code 0 "\301\300\302\"\207" vconcat vector [set-match-data evaporate] 3 string-match "\\`\\*" "\n" substring] 9 (#$ . 53898)])
(defalias 'elisp--fnsym-in-current-sexp #[0 "\212\300\301 8?\205\302 S\211\303W\203\303\262\304 D\262)\207" [8 syntax-ppss elisp--beginning-of-sexp 0 elisp--current-symbol] 3])
(defalias 'elisp--beginning-of-sexp #[0 "\301\302\3031E\3041%`\305\306!\210\305\307!\210`W\205\307\211\262\2620\202(\310\262\210`\305\306!\210`W\2059T\211\262\262\205A\202)0\202H\310\262\210)\207" [parse-sexp-ignore-comments t 0 (error) (error) forward-sexp -1 1 nil] 5])
(defalias 'elisp--current-symbol #[0 "`f\211\205\211z\300>\205\301\302 !\207" [(119 95) intern-soft current-word] 3])
#@119 Return ARGLIST as a string enclosed by ().
ARGLIST is either a string, or a list of strings or symbols.

(fn ARGLIST)
(defalias 'elisp-function-argstring #[257 "\211;\203	\211\202\211<\204\300\202\301\302\303\"!\211\203,\304\305\"\203,\306\307\310\211$\202-\211\207" [nil substitute-command-keys help--make-usage-docstring toto string-match "\\`([^ )]+ ?" replace-match "(" t] 7 (#$ . 54911)])
#@88 A Flymake backend for `checkdoc'.
Calls REPORT-FN directly.

(fn REPORT-FN &rest ARGS)
(defalias 'elisp-flymake-checkdoc #[385 "\304C\305\306\307\310\311!\312\"\313\314%\304\211\315\316!\317\216\212\3201%\321\322!0\202)\210\202*\210.\242\304\211\211\211\211\211:\203r@\262\211A\262\242\262\211A\262\242\262\211A\262\242\262@\262\323p\324\n%B\262A\262\2025\211\237\266\207!\210\211\242\207" [checkdoc-create-error-function checkdoc-autofix-flag checkdoc-generate-compile-warnings-flag checkdoc-diagnostic-buffer nil make-byte-code 1027 "\300F\300\242B\240\210\301\207" vconcat vector [nil] 9 "\n\n(fn TEXT START END &optional UNFIXABLE)" generate-new-buffer " *checkdoc-temp*" #[0 "\301!\207" [checkdoc-diagnostic-buffer kill-buffer] 2] (error) checkdoc-current-buffer t flymake-make-diagnostic :note] 18 (#$ . 55324)])
#@46 

(fn REPORT-FN SOURCE-BUFFER OUTPUT-BUFFER)
(defalias 'elisp-flymake--byte-compile-done #[771 "rq\210\212\214~\210rq\210eb\210\300\301!\210\302\303 !)\211\304\211\211\211\211\211\211\211:\203\210@\262\211A\262\242\262\211A\262\242\262\211A\262\242\262@\262b\210`dW\203W`\202Y\305 \262\306 \307\310!A\206ed^\262\311pU\203uS\202v	\f%B\262A\262	\202\"\211\237\266\212!+\207" [search-forward ":elisp-flymake-output-start" read point-marker nil line-beginning-position line-end-position bounds-of-thing-at-point sexp flymake-make-diagnostic] 20 (#$ . 56193)])
#@61 Buffer-local process started for byte-compiling the buffer.
(defvar elisp-flymake--byte-compile-process nil (#$ . 56796))
(make-variable-buffer-local 'elisp-flymake--byte-compile-process)
#@182 Like `load-path' but used by `elisp-flymake-byte-compile'.
The default value contains just "./" which includes the default
directory of the buffer being compiled, and nothing else.
(defvar elisp-flymake-byte-compile-load-path (list "./") (#$ . 56991))
(put 'elisp-flymake-byte-compile-load-path 'safe-local-variable #[257 "\211<\205%\3002%\211\211\203!\211@\211;\204\301\300\302\"\210A\266\202\202\n\303\2620\207" [tag throw nil t] 6 "\n\n(fn X)"])
#@192 A Flymake backend for elisp byte compilation.
Spawn an Emacs process that byte-compiles a file representing the
current buffer state and calls REPORT-FN when done.

(fn REPORT-FN &rest ARGS)
(defalias 'elisp-flymake-byte-compile #[385 "\203\304!\203\305!\210\306\307!p\214~\210\310ed\311\312%\210)\313\314!\315\316\307\317\320\321	\n\"\322\323\324\325\326\"\327\330E\"BBB\331\332\333\334\335\336\337\340$\341\"\342\343%\344\345\346\347&\211\262\207" [elisp-flymake--byte-compile-process invocation-name invocation-directory elisp-flymake-byte-compile-load-path process-live-p kill-process make-temp-file "elisp-flymake-byte-compile" write-region nil nomessage generate-new-buffer " *elisp-flymake-byte-compile*" make-process :name :buffer :command expand-file-name "-Q" "--batch" append mapcan #[257 "\300D\207" ["-L"] 3 "\n\n(fn PATH)"] "-f" "elisp-flymake--batch-compile-for-flymake" :connection-type pipe :sentinel make-byte-code 514 "\305!\306=\205I\307\310\311\312\313\301\303\"\314\"\315$\216\316\302!\203&r\302q\210\f)=\204/\317\320\321\322$\202H\323!\310U\203?\324\300\302\303#\202H\300\325\326\327\330\"#)\207" vconcat vector [elisp-flymake--byte-compile-process process-status exit make-byte-code 0 "\3021\303\300!0\202\210\202\210\304\301!\207" vconcat vector [(error) delete-file kill-buffer] 2 buffer-live-p flymake--log-1 :warning elisp-mode "byte-compile process %s obsolete" process-exit-status elisp-flymake--byte-compile-done :panic :explanation format "byte-compile process %s died"] 9 "\n\n(fn PROC EVENT)" :stderr " *stderr of elisp-flymake-byte-compile*" :noquery t] 24 (#$ . 57455)])
#@148 Helper for `elisp-flymake-byte-compile'.
Runs in a batch-mode Emacs.  Interactively use variable
`buffer-file-name' for FILE.

(fn &optional FILE)
(defalias 'elisp-flymake--batch-compile-for-flymake #[256 "\211\206@\304C\305\306!\307\310\311\312\313!\314\"\315\316%\304C\307\317\320\312\313!\321\"\322\323%\307\324\325\312\313!\326\"\327$\216\330!\210)\331\332!\210\333 \210\334\242!+\207" [command-line-args-left byte-compile-log-buffer byte-compile-dest-file-function byte-compile-log-warning-function nil generate-new-buffer " *dummy-byte-compile-log-buffer*" make-byte-code 257 "\300\301\302!!\240\207" vconcat vector [make-temp-file file-name-nondirectory] 5 "\n\n(fn SOURCE)" 1025 "\300F\300\242B\240\210\301\207" [t] 9 "\n\n(fn STRING &optional POSITION FILL LEVEL)" 0 "\3021\303\300\242!\210\304	!0\207\210\305\207" [byte-compile-log-buffer (error) delete-file kill-buffer nil] 2 byte-compile-file prin1 :elisp-flymake-output-start terpri pp] 10 (#$ . 59111) (list buffer-file-name)])
(provide 'elisp-mode)

Zerion Mini Shell 1.0