| Server IP : 217.160.0.212 / Your IP : 216.73.216.71 Web Server : Apache System : Linux www 6.18.52-i1-ampere #1203 SMP Mon Sep 14 18:29:59 CEST 2026 aarch64 User : sws1073854427 ( 1073854427) PHP Version : 8.4.23 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /usr/share/emacs/28.2/lisp/emacs-lisp/ |
Upload File : |
;ELC
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.
(byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\305\306\307\310\311\312%\210\313\314\315\316\317\320%\210\313\321\322\323\317\320%\210\324\325\326\327\330DD\331\332\333%\210\324\334\326\327\335DD\336\332\337%\210\324\340\326\327\341DD\342\332\337%\210\324\343\326\327\344DD\345\332\337%\210\324\346\326\327\347DD\350\332\351\317\352&\210\324\353\326\327\354DD\355\332\356%\210\324\357\326\327\360DD\361\332\337%\210\324\362\326\327\363DD\364\332\365%\210\324\366\326\327\367DD\370\332\337%\210\324\371\326\327\372DD\373\332\337%\210\324\374\326\327\375DD\376\332\337%\210\324\377\326\327\201@ DD\201A \332\201B %\210\324\201C \326\327\201D DD\201E \332\201F %\210\324\201G \326\327\201H DD\201I \332\337%\210\324\201J \326\327\201K DD\201L \332\337%\210\324\201M \326\327\201N DD\201O \332\201P %\210\324\201Q \326\327\201R DD\201S \332\337%\210\324\201T \326\327\201U DD\201V \332\201W \201X \201Y &\210\324\201Z \326\327\201[ DD\201\\ \332\201] %\210\324\201^ \326\327\201_ DD\201` \332\337\317\352&\207" [require backtrace macroexp cl-lib seq custom-declare-group edebug nil "A source-level debugger for Emacs Lisp." :group lisp custom-declare-face edebug-enabled-breakpoint ((t :inherit highlight)) "Face used to mark enabled breakpoints." :version "27.1" edebug-disabled-breakpoint ((((class color) (min-colors 88) (background light)) :background "#ddffdd" :extend t) (((class color) (min-colors 88) (background dark)) :background "#335533" :extend t)) "Face used to mark disabled breakpoints." custom-declare-variable edebug-setup-hook funcall function #[0 "\300\207" [nil] 1 #1=""] "Functions to call before edebug is used.\nEach time it is set to a new value, Edebug will call those functions\nonce and then reset `edebug-setup-hook' to nil. You could use this\nto load up Edebug specifications associated with a package you are\nusing, but only when you also use Edebug." :type hook edebug-all-defs #[0 "\300\207" [nil] 1 #1#] "If non-nil, evaluating defining forms instruments for Edebug.\nThis applies to `eval-defun', `eval-region', `eval-buffer', and\n`eval-current-buffer'. `eval-region' is also called by\n`eval-last-sexp', and `eval-print-last-sexp'.\n\nYou can use the command `edebug-all-defs' to toggle the value of this\nvariable. You may wish to make it local to each buffer with\n(make-local-variable \\='edebug-all-defs) in your\n`emacs-lisp-mode-hook'." boolean edebug-all-forms #[0 "\300\207" [nil] 1 #1#] "Non-nil means evaluation of all forms will instrument for Edebug.\nThis doesn't apply to loading or evaluations in the minibuffer.\nUse the command `edebug-all-forms' to toggle the value of this option." edebug-eval-macro-args #[0 "\300\207" [nil] 1 #1#] "Non-nil means all macro call arguments may be evaluated.\nIf this variable is nil, the default, Edebug will *not* wrap\nmacro call arguments as if they will be evaluated.\nFor each macro, an `edebug-form-spec' overrides this option.\nSo to specify exceptions for macros that have some arguments evaluated\nand some not, use `def-edebug-spec' to specify an `edebug-form-spec'." edebug-max-depth #[0 "\300\207" [150] 1 #1#] "Maximum recursion depth when instrumenting code.\nThis limit is intended to stop recursion if an Edebug specification\ncontains an infinite loop. When Edebug is instrumenting code\ncontaining very large quoted lists, it may reach this limit and give\nthe error message \"Too deep - perhaps infinite loop in spec?\".\nMake this limit larger to countermand that, but you may also need to\nincrease `max-lisp-eval-depth' and `max-specpdl-size'." integer "26.1" edebug-save-windows #[0 "\300\207" [t] 1 #1#] "If non-nil, Edebug saves and restores the window configuration.\nThat takes some time, so if your program does not care what happens to\nthe window configurations, it is better to set this variable to nil.\n\nIf the value is a list, only the listed windows are saved and\nrestored.\n\n`edebug-toggle-save-windows' may be used to change this variable." (choice boolean (repeat string)) edebug-save-displayed-buffer-points #[0 "\300\207" [nil] 1 #1#] "If non-nil, save and restore point in all displayed buffers.\n\nSaving and restoring point in other buffers is necessary if you are\ndebugging code that changes the point of a buffer that is displayed\nin a non-selected window. If Edebug or the user then selects the\nwindow, the buffer's point will be changed to the window's point.\n\nSaving and restoring point in all buffers is expensive, since it\nrequires selecting each window twice, so enable this only if you\nneed it." edebug-initial-mode #[0 "\300\207" [step] 1 #1#] "Initial execution mode for Edebug, if non-nil.\nIf this variable is non-nil, it specifies the initial execution mode\nfor Edebug when it is first activated. Possible values are step, next,\ngo, Go-nonstop, trace, Trace-fast, continue, and Continue-fast." (choice (const step) (const next) (const go) (const Go-nonstop) (const trace) (const Trace-fast) (const continue) (const Continue-fast)) edebug-trace #[0 "\300\207" [nil] 1 #1#] "Non-nil means display a trace of function entry and exit.\nTracing output is displayed in a buffer named `*edebug-trace*', one\nfunction entry or exit per line, indented by the recursion level.\n\nYou can customize by replacing functions `edebug-print-trace-before'\nand `edebug-print-trace-after'." edebug-test-coverage #[0 "\300\207" [nil] 1 #1#] "If non-nil, Edebug tests coverage of all expressions debugged.\nThis is done by comparing the result of each expression with the\nprevious result. Coverage is considered OK if two different\nresults are found.\n\nUse `edebug-display-freq-count' to display the frequency count and\ncoverage information for a definition." edebug-continue-kbd-macro #[0 "\300\207" [nil] 1 #1#] "If non-nil, continue defining or executing any keyboard macro.\nUse this with caution since it is not debugged." edebug-print-length #[0 "\300\207" [50] 1 #1#] "If non-nil, default value of `print-length' for printing results in Edebug." (choice integer (const nil)) edebug-print-level #[0 "\300\207" [50] 1 #1#] "If non-nil, default value of `print-level' for printing results in Edebug." (choice integer (const nil)) edebug-print-circle #[0 "\300\207" [t] 1 #1#] "If non-nil, default value of `print-circle' for printing results in Edebug." edebug-unwrap-results #[0 "\300\207" [nil] 1 #1#] "Non-nil if Edebug should unwrap results of expressions.\nThat is, Edebug will try to remove its own instrumentation from the result.\nThis is useful when debugging macros where the results of expressions\nare instrumented expressions." edebug-on-error #[0 "\300\207" [t] 1 #1#] "Value bound to `debug-on-error' while Edebug is active.\n\nIf `debug-on-error' is non-nil, that value is still used.\n\nIf the value is a list of signal names, Edebug will stop when any of\nthese errors are signaled from Lisp code whether or not the signal is\nhandled by a `condition-case'. This option is useful for debugging\nsignals that *are* handled since they would otherwise be missed.\nAfter execution is resumed, the error is signaled again." (choice (const :tag "off") (repeat :menu-tag "When" :value (nil) (symbol :format "%v")) (const :tag "always" t)) edebug-on-quit #[0 "\300\207" [t] 1 #1#] "Value bound to `debug-on-quit' while Edebug is active." edebug-global-break-condition #[0 "\300\207" [nil] 1 #1#] "If non-nil, an expression to test for at every stop point.\nIf the result is non-nil, then break. Errors are ignored." sexp :risky t edebug-sit-for-seconds #[0 "\300\207" [1] 1 #1#] "Number of seconds to pause when execution mode is `trace' or `continue'." number edebug-sit-on-break #[0 "\300\207" [t] 1 #1#] "Whether or not to pause for `edebug-sit-for-seconds' on reaching a break."] 8)
#@140 Return the Edebug spec of a given Lisp expression's head SYMBOL.
The argument is usually a symbol, but it doesn't have to be.
(fn SYMBOL)
(defalias 'edebug-get-spec #[257 "\300\2119\203 \301\302\303#\211\262\203 \211\262\202 \207" [nil function-get edebug-form-spec macro] 7 (#$ . 7855)])
(byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias get-edebug-spec edebug-get-spec nil make-obsolete "28.1"] 4)
#@90 Return the specs of the Edebug element ELEM, if any.
ELEM has to be a symbol.
(fn ELEM)
(defalias 'edebug--get-elem-spec #[257 "\211\300N\206 \301!\207" [edebug-elem-spec edebug-get-spec] 3 (#$ . 8286)])
#@156 Return t if SPEC uses only extant spec symbols.
An extant spec symbol is a symbol that is not a function and has a
`edebug-form-spec' property.
(fn SPEC)
(defalias 'edebug-basic-spec #[257 "\211<\203# \30027 \211\203 \301@!\204 \302\300\303\"\210\211A\262\202 \3040\207\2119\2057 \305!?\2057 \306\307\"\2057 \304\207" [basic edebug-basic-spec throw nil t functionp function-get edebug-form-spec] 4 (#$ . 8500)])
#@115 Return t if OBJECT is a lambda list keyword.
A lambda list keyword is a symbol that starts with `&'.
(fn OBJECT)
(defalias 'edebug-lambda-list-keywordp #[257 "\2119\205\f \300!\301H\302U\207" [symbol-name 0 38] 3 (#$ . 8927)])
(defalias 'edebug-last-sexp #[0 "\300\212\301\302!\210`)`{!@\207" [read-from-string forward-sexp -1] 3])
#@54 Return a list of windows, in order of `next-window'.
(defalias 'edebug-window-list #[0 "\300C\301\302\303\"!\210\211\242\237\207" [nil walk-windows make-closure #[257 "\300\300\242B\240\207" [V0] 4 "\n\n(fn W)"]] 5 (#$ . 9267)])
#@23
(fn ALIST FUNCTION)
(defalias 'edebug-sort-alist #[514 "\300\301\302\"\"\207" [sort make-closure #[514 "\300@@\"\207" [V0] 5 "\n\n(fn E1 E2)"]] 7 (#$ . 9504)])
#@42 Name of the buffer to put trace info in.
(defconst edebug-trace-buffer "*edebug-trace*" (#$ . 9676))
#@32
(fn BUFFER &optional WINDOW)
(defalias 'edebug-pop-to-buffer #[513 "\301!\203 \302!=\203 \211\202n \302 =\203 \303 \202n \304\305\"\206n \306\307!\2032 \310\311 !\202n \304!\3122e \313\314\307\"\211\205b \211@\211\303 =\204[ \211=\204[ \315!\204[ \316\312\"\210A\266\202\202= \2620\262\206n \310\311 !\262\317\"\210\320!\210\321\322 !\323>\204\207 \324\322 !\210\325\305\"\207" [edebug-trace-buffer window-live-p window-buffer selected-window get-buffer-window 0 one-window-p nomini split-window minibuffer-selected-window found window-list nil window-dedicated-p throw set-window-buffer select-window framep selected-frame (nil t pc) x-focus-frame set-window-hscroll] 8 (#$ . 9783)])
(defalias 'edebug-get-displayed-buffer-points #[0 "\300C\301\302\303\"!\210\211\242\207" [nil walk-windows make-closure #[257 "\211\301 =?\205 \300\302!\303!B\300\242B\240\207" [V0 selected-window window-buffer window-point] 5 "\n\n(fn W)"]] 5])
#@22
(fn BUFFER-POINTS)
(defalias 'edebug-set-buffer-points #[257 "r\300\301\")\207" [mapcar #[257 "\300@!\205 \211@q\210\211Ab\207" [buffer-live-p] 3 "\n\n(fn BUF-POINT)"]] 4 (#$ . 10746)])
#@22
(fn WHICH-WINDOWS)
(defalias 'edebug-current-windows #[257 "\211<\203\n \300\301\"\207\302 \207" [mapcar #[257 "\300!\205 \211\301!\302!\303!\304!\257\207" [window-live-p window-buffer window-point window-start window-hscroll] 7 "\n\n(fn WINDOW)"] current-window-configuration] 4 (#$ . 10943)])
#@20
(fn WINDOW-INFO)
(defalias 'edebug-set-windows #[257 "\211<\203\n \300\301\"\207\302!\207" [mapcar #[257 "\211\205 \300\301\"\207" [apply #[1285 "\300!\205 \301\"\210\302\"\210\303\"\210\304\"\207" [window-live-p set-window-buffer set-window-point set-window-start set-window-hscroll] 8 "\n\n(fn WINDOW BUFFER POINT START HSCROLL)"]] 4 "\n\n(fn ONE-WINDOW-INFO)"] set-window-configuration] 4 (#$ . 11254)])
#@773 Read one Lisp expression as text from STREAM, return as Lisp object.
If STREAM is nil, use the value of `standard-input' (which see).
STREAM or the value of `standard-input' may be:
a buffer (read from point and advance it)
a marker (read from where it points and advance it)
a function (call it with no arguments for each character,
call it with a char as argument to push a char back)
a string (takes text from string, starting at the beginning)
t (read text line using minibuffer and use it).
This version, from Edebug, maybe instruments the expression. But the
STREAM must be the current buffer to do so. Whether it instruments is
also dependent on the values of the option `edebug-all-defs' and
the option `edebug-all-forms'.
(fn ORIG &optional STREAM)
(defalias 'edebug--read #[513 "\211\204 \262\211p=\203 \301 \207\206 \302!\207" [standard-input edebug-read-and-maybe-wrap-form read] 4 (#$ . 11684)])
#@377 Setting option `edebug-all-defs' to a non-nil value reverses the meaning
of the prefix argument. Code is then instrumented when this function is
invoked without a prefix argument.
If acting on a `defun' for FUNCTION, and the function was instrumented,
`Edebug: FUNCTION' is printed in the minibuffer. If not instrumented,
just FUNCTION is printed.
(fn ORIG-FUN EDEBUG-IT)
(defalias 'edebug--eval-defun #[514 "\302\303\304\305B\306\307$\210\211??=?\211\307!*\207" [edebug-all-defs edebug-all-forms advice--add-function :around #[0 "\300\301!\207" [default-value load-read-function] 2] #[257 "\300\301\"\207" [set-default load-read-function] 4 "\n\n(fn GV--VAL)"] edebug--read nil] 8 (#$ . 12621)])
#@18
(fn EDEBUG-IT)
(defalias 'edebug-eval-defun #[257 "\300\301\302\"\203 \302!\207\301\302\"\207" [advice-member-p edebug--eval-defun eval-defun] 4 (#$ . 13333) "P"])
(byte-code "\300\301\302\303#\210\304\305\306\"\207" [make-obsolete edebug-eval-defun "use `eval-defun' or `edebug--eval-defun' instead" "28.1" defalias edebug-defun edebug-eval-top-level-form] 4)
#@813 Evaluate the top level form point is in, stepping through with Edebug.
This is like `eval-defun' except that it steps the code for Edebug
before evaluating it. It displays the value in the echo area
using `eval-expression' (which see).
If you do this on a function definition such as a defun or defmacro,
it defines the function and instruments its definition for Edebug,
so it will do Edebug stepping when called later. It displays
`Edebug: FUNCTION' in the echo area to indicate that FUNCTION is now
instrumented for Edebug.
If the current defun is actually a call to `defvar' or `defcustom',
evaluating it this way resets the variable using its initial value
expression even if the variable already has some other value.
(Normally `defvar' and `defcustom' do not alter the value if there
already is one.)
(defalias 'edebug-eval-top-level-form #[0 "\302\303\211\304\305 !*!\207" [edebug-all-defs edebug-all-forms eval-expression t eval-sexp-add-defvars edebug-read-top-level-form] 3 (#$ . 13706) nil])
(defvar edebug-active nil)
(defalias 'edebug-read-top-level-form #[0 "`\301\302 \210\303 \210\304 b\210)\207" [edebug-active t end-of-defun beginning-of-defun edebug-read-and-maybe-wrap-form] 3])
(byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias edebug-all-defuns edebug-all-defs nil make-obsolete "28.1"] 4)
#@39 Toggle edebugging of all definitions.
(defalias 'edebug-all-defs #[0 "?\301\302\203
\303\202 \304\"\207" [edebug-all-defs message "Edebugging all definitions is %s." "on" "off"] 3 (#$ . 15049) nil])
#@33 Toggle edebugging of all forms.
(defalias 'edebug-all-forms #[0 "?\301\302\203
\303\202 \304\"\207" [edebug-all-forms message "Edebugging all forms is %s." "on" "off"] 3 (#$ . 15259) nil])
(defalias 'edebug-install-read-eval-functions #[0 "\300\301\302\303B\304\305$\210\306\307\301\310#\207" [advice--add-function :around #[0 "\300\301!\207" [default-value load-read-function] 2] #[257 "\300\301\"\207" [set-default load-read-function] 4 "\n\n(fn GV--VAL)"] edebug--read nil advice-add eval-defun edebug--eval-defun] 5 nil nil])
(defalias 'edebug-uninstall-read-eval-functions #[0 "\300\301\302!\303\"\211\301\302!=\204 \304\302\"\210\210\305\306\307\"\207" [advice--remove-function default-value load-read-function edebug--read set-default advice-remove eval-defun edebug--eval-defun] 4 nil nil])
#@482 A list of entries associating symbols with buffer regions.
Each entry is an `edebug--form-data' struct with fields:
SYMBOL, BEGIN-MARKER, and END-MARKER. The markers
are at the beginning and end of an instrumented form and SYMBOL is
a symbol that holds all edebug related information for the form on its
property list.
In the future (haha!), the symbol will be irrelevant and edebug data will
be stored in the definitions themselves rather than in the property
list of a symbol.
(defvar edebug-form-data nil (#$ . 16073))
(make-variable-buffer-local 'edebug-form-data)
#@79 compiler-macro for inlining `edebug--form-data-name'.
(fn CL-WHOLE-ARG CL-X)
(defalias 'edebug--form-data-name--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block edebug--form-data-name (progn (car cl-x))) nil] 9 (#$ . 16650)])
(put 'edebug--form-data-name 'compiler-macro 'edebug--form-data-name--cmacro)
#@67 Access slot "name" of `edebug--form-data' struct CL-X.
(fn CL-X)
(defalias 'edebug--form-data-name #[257 "\211@\207" [] 2 (#$ . 16998)])
(byte-code "\300\301\302\303#\300\207" [function-put edebug--form-data-name side-effect-free t] 4)
#@80 compiler-macro for inlining `edebug--form-data-begin'.
(fn CL-WHOLE-ARG CL-X)
(defalias 'edebug--form-data-begin--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block edebug--form-data-begin (progn (nth 1 cl-x))) nil] 9 (#$ . 17241)])
(put 'edebug--form-data-begin 'compiler-macro 'edebug--form-data-begin--cmacro)
#@68 Access slot "begin" of `edebug--form-data' struct CL-X.
(fn CL-X)
(defalias 'edebug--form-data-begin #[257 "\211A@\207" [] 2 (#$ . 17596)])
(byte-code "\300\301\302\303#\300\207" [function-put edebug--form-data-begin side-effect-free t] 4)
#@78 compiler-macro for inlining `edebug--form-data-end'.
(fn CL-WHOLE-ARG CL-X)
(defalias 'edebug--form-data-end--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block edebug--form-data-end (progn (nth 2 cl-x))) nil] 9 (#$ . 17843)])
(put 'edebug--form-data-end 'compiler-macro 'edebug--form-data-end--cmacro)
#@66 Access slot "end" of `edebug--form-data' struct CL-X.
(fn CL-X)
(defalias 'edebug--form-data-end #[257 "\3008\207" [2] 3 (#$ . 18188)])
(byte-code "\300\301\302\303#\300\207" [function-put edebug--form-data-end side-effect-free t] 4)
#@95 compiler-macro for inlining `edebug--make-form-data-entry'.
(fn CL-WHOLE-ARG NAME BEGIN END)
(defalias 'edebug--make-form-data-entry--cmacro #[1028 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (name begin end) (cl-block edebug--make-form-data-entry (list name begin end)) nil] 13 (#$ . 18430)])
(put 'edebug--make-form-data-entry 'compiler-macro 'edebug--make-form-data-entry--cmacro)
#@75 Constructor for objects of type `edebug--form-data'.
(fn NAME BEGIN END)
(defalias 'edebug--make-form-data-entry #[771 "E\207" [] 6 (#$ . 18837)])
(byte-code "\300\301\302\303#\304\305\306\211\307\306\310\311\305\306& \207" [function-put edebug--make-form-data-entry side-effect-free t cl-struct-define edebug--form-data nil list ((name) (begin) (end)) cl-struct-edebug--form-data-tags] 11)
#@29
(fn ENTRY NAME BEGIN END)
(defalias 'edebug-set-form-data-entry #[1028 "\240\210A@\300\223\210\3018\300\223\207" [nil 2] 7 (#$ . 19238)])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put edebug-set-form-data-entry speed -1 put byte-optimizer byte-compile-inline-expand] 5)
#@32
(fn PNT &optional END-POINT)
(defalias 'edebug-get-form-data-entry #[513 "\301\302\203H \303W\203H @\211A@ZA\262\303X\203C \211W\203C \2034 \3048U\203C \3048X\203C \211\262\262\266\202 \207" [edebug-form-data nil 999999 0 2] 11 (#$ . 19542)])
#@123 Return the edebug data symbol of the form where point is in.
If point is not inside an edebuggable form, signal an error.
(defalias 'edebug-form-data-symbol #[0 "\300`!\211@\262\206
\301\302!\207" [edebug-get-form-data-entry error "Not inside instrumented form"] 2 (#$ . 19819)])
#@18
(fn NEW-ENTRY)
(defalias 'edebug-make-top-form-data-entry #[257 "\301!\210\211B\211\207" [edebug-form-data edebug-clear-form-data-entry] 3 (#$ . 20107)])
#@124 If non-nil, clear ENTRY out of the form data.
Maybe clear the markers and delete the symbol's edebug property?
(fn ENTRY)
(defalias 'edebug-clear-form-data-entry #[257 "\211\205\n \301\"\211\207" [edebug-form-data delq] 4 (#$ . 20273)])
#@19
(fn &rest ARGS)
(defalias 'edebug-syntax-error #[128 "\300\301\"\207" [signal invalid-read-syntax] 4 (#$ . 20520)])
(defconst edebug-read-syntax-table (byte-code "\300\301\302\"\303\211\304W\203 \305I\210\211T\262\202 \306\307I\210\310\311I\210\312\313I\210\314\315I\210\316\317I\210\320\321I\210\322\323I\210\324\325I\210\326\327I\210\330\331I\210\332\333I\210\207" [make-char-table syntax-table symbol 0 33 space 40 lparen 41 rparen 39 quote 96 backquote 44 comma 34 string 63 char 91 lbracket 93 rbracket 46 dot 35 hash] 5))
(defalias 'edebug-next-token-class #[0 "\301 \210g\302=\203% \212\303u\210gH\304=\203 g\305U?\206 g\306>)\203% \304\207gH\207" [edebug-read-syntax-table edebug-skip-whitespace 46 1 symbol 59 (44 46)] 2])
(defalias 'edebug-skip-whitespace #[0 "\300\301w\210g\302U\205 \303\301w\210\300\301w\210\202 \207" ["
\n\f" nil 59 "^\n"] 2])
(defalias 'edebug-read-sexp #[0 "\300 \211\301\267\202( \302p!\207\302p!\207\303u\210\304\305 D\207\303u\210\306\305 D\207\303u\210\307\305 D\207\302p!\207" [edebug-next-token-class #s(hash-table size 5 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (symbol 8 string 12 quote 16 backquote 24 comma 32)) read 1 quote edebug-read-sexp \` \,] 3])
#@270 Get NAME's value of property `edebug' or property `ghost-edebug'.
The idea is that should function NAME be recompiled whilst
debugging is in progress, property `edebug' will get set to a
marker. The needed data will then come from property
`ghost-edebug'.
(fn NAME)
(defalias 'edebug-get-edebug-or-ghost #[257 "\211\300N\211:\203 \207\301N\211:\203 \207\207" [edebug ghost-edebug] 4 (#$ . 21775)])
(defvar edebug-offsets nil)
(defvar edebug-offsets-stack nil)
(defvar edebug-current-offset nil)
(defvar edebug-read-objects nil)
(defvar edebug-read-dotted-list nil)
(defalias 'edebug-initialize-offsets #[0 "\301\211\207" [edebug-current-offset nil] 2])
(byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put edebug-initialize-offsets speed -1 put byte-optimizer byte-compile-inline-expand] 5)
#@14
(fn POINT)
(defalias 'edebug-store-before-offset #[257 "\211C\203 AB\241\210\202 \211\304\211\211\nB\211\211\207" [edebug-current-offset edebug-offsets edebug-offsets-stack edebug-read-dotted-list nil] 6 (#$ . 22593)])
#@14
(fn POINT)
(defalias 'edebug-store-after-offset #[257 "\204
\211A\237\241\210\202 \303 \211AA\237 A@A\244\241\210 \244\nA\211@\211\207" [edebug-read-dotted-list edebug-current-offset edebug-offsets-stack nil] 5 (#$ . 22831)])
(defalias 'edebug-ignore-offset #[0 "\211AA\241\207" [edebug-current-offset] 2])
#@25
(fn POINT &rest BODY)
(defalias 'edebug-storing-offsets '(macro . #[385 "\300\301\302DBB\303BB\207" [unwind-protect progn edebug-store-before-offset ((edebug-store-after-offset (point)))] 6 (#$ . 23156)]))
(byte-code "\300\301\302\303#\210\304\301\305\306#\300\207" [put edebug-storing-offsets edebug-form-spec (form body) function-put lisp-indent-function 1] 4)
(defconst edebug-read-alist '((symbol . edebug-read-symbol) (lparen . edebug-read-list) (string . edebug-read-string) (quote . edebug-read-quote) (backquote . edebug-read-backquote) (comma . edebug-read-comma) (lbracket . edebug-read-vector) (hash . edebug-read-special)))
#@15
(fn STREAM)
(defalias 'edebug-read-storing-offsets #[257 "\302\303\216\304`!\210\305 \236A\206 \306!*\207" [edebug-read-dotted-list edebug-read-alist nil #[0 "\300`!\207" [edebug-store-after-offset] 2] edebug-store-before-offset edebug-next-token-class read] 3 (#$ . 23802)])
(byte-code "\300\301\302\"\210\300\303\302\"\207" [defalias edebug-read-symbol read edebug-read-string] 3)
#@15
(fn STREAM)
(defalias 'edebug-read-quote #[257 "\300u\210\301\216\302`S!\210)\303\304!D\207" [1 #[0 "\300`!\207" [edebug-store-after-offset] 2] edebug-store-before-offset quote edebug-read-storing-offsets] 4 (#$ . 24197)])
#@15
(fn STREAM)
(defalias 'edebug-read-backquote #[257 "\300u\210\301\216\302`S!\210)\303\304!D\207" [1 #[0 "\300`!\207" [edebug-store-after-offset] 2] edebug-store-before-offset \` edebug-read-storing-offsets] 4 (#$ . 24429)])
#@15
(fn STREAM)
(defalias 'edebug-read-comma #[257 "`\300u\210\301g\302=\203 \303\262\300u\210\202 g\304=\203 \305\262\300u\210\306\216\307!\210)\211\310!D\207" [1 \, 46 \,\. 64 \,@ #[0 "\300`!\207" [edebug-store-after-offset] 2] edebug-store-before-offset edebug-read-storing-offsets] 6 (#$ . 24662)])
#@181 Read from STREAM a Lisp object beginning with #.
Turn #'thing into (function thing) and handle the read syntax for
circular objects. Let `read' read everything else.
(fn STREAM)
(defalias 'edebug-read-special #[257 "\3022\227 \303u\210`g\304=\203&