%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/emacs-lisp/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/emacs-lisp/backtrace.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!\210\304\305\306\307\310\311%\210\312\313\314\315\316DD\317\320\321\310\305\322\323&	\210\312\324\314\315\325DD\326\320\327\310\305\322\323&	\207" [require find-func help-mode lisp-mode custom-declare-group backtrace nil "Viewing of Elisp backtraces." :group lisp custom-declare-variable backtrace-fontify funcall function #[0 "\300\207" [t] 1] "If non-nil, fontify Backtrace buffers.\nSet to nil to disable fontification, which may be necessary in\norder to debug the code that does fontification." :type boolean :version "27.1" backtrace-line-length #[0 "\300\207" [5000] 1] "Target length for lines in Backtrace buffers.\nBacktrace mode will attempt to abbreviate printing of backtrace\nframes to make them shorter than this, but success is not\nguaranteed.  If set to nil or zero, Backtrace mode will not\nabbreviate the forms it prints." integer] 10)
#@74 compiler-macro for inlining `backtrace-frame-p'.

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

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

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

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

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

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

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

(fn CL-X)
(defalias 'backtrace-frame-args #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-backtrace-frame-tags type-of signal wrong-type-argument backtrace-frame 3] 5 (#$ . 3970)])
(byte-code "\300\301\302\303#\300\207" [function-put backtrace-frame-args side-effect-free t] 4)
#@78 compiler-macro for inlining `backtrace-frame-flags'.

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

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

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

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

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

(fn CL-X)
(defalias 'backtrace-frame-buffer #[257 "\301!>\204\302\303\304D\"\210\211\305H\207" [cl-struct-backtrace-frame-tags type-of signal wrong-type-argument backtrace-frame 6] 5 (#$ . 6362)])
(byte-code "\300\301\302\303#\300\207" [function-put backtrace-frame-buffer side-effect-free t] 4)
#@76 compiler-macro for inlining `backtrace-frame-pos'.

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

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

(fn CL-WHOLE &cl-quote &key EVALD FUN ARGS FLAGS LOCALS BUFFER POS)
(defalias 'backtrace-make-frame--cmacro #[385 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\300\305\"A@\300\306\"A@\300\307\"A@\211\203Y\211@\310>\203A\211AA\262\202.\311	>A@\203P\312\262\202.\313\314@\"\210\202.\210\315\316\317\312\f\312\f\f\f\f\f\f\f&\f\207" [plist-member :evald :fun :args :flags :locals :buffer :pos (:evald :fun :args :flags :locals :buffer :pos :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:evald :fun :args :flags :locals :buffer :pos)" cl--defsubst-expand (evald fun args flags locals buffer pos) (cl-block backtrace-make-frame (record 'backtrace-frame evald fun args flags locals buffer pos))] 22 (#$ . 7558)])
(put 'backtrace-make-frame 'compiler-macro 'backtrace-make-frame--cmacro)
#@102 Constructor for objects of type `backtrace-frame'.

(fn &key EVALD FUN ARGS FLAGS LOCALS BUFFER POS)
(defalias 'backtrace-make-frame #[128 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\300\305\"A@\300\306\"A@\300\307\"A@\211\203Y\211@\310>\203A\211AA\262\202.\311	>A@\203P\312\262\202.\313\314@\"\210\202.\210\315\316&\207" [plist-member :evald :fun :args :flags :locals :buffer :pos (:evald :fun :args :flags :locals :buffer :pos :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:evald :fun :args :flags :locals :buffer :pos)" record backtrace-frame] 17 (#$ . 8465)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303&	\207" [function-put backtrace-make-frame side-effect-free t cl-struct-define backtrace-frame nil cl-structure-object record ((cl-tag-slot) (evald) (fun) (args) (flags) (locals) (buffer) (pos)) cl-struct-backtrace-frame-tags] 11)
#@412 Collect all frames of current backtrace into a list.
The list will contain objects made by CONSTRUCTOR, which
defaults to `backtrace-make-frame' and which, if provided, should
be the constructor of a structure which includes
`backtrace-frame'.  If non-nil, BASE should be a function, and
frames before its nearest activation frame are discarded.

(fn &optional BASE &key (CONSTRUCTOR #\='backtrace-make-frame))
(defalias 'backtrace-get-frames #[384 "\302\303\"\206\304A@\211\2035\211@\305>\203\211AA\262\202\306>A@\203,\307\262\202\310\311@\"\210\202\210\307C\312\313\314\315\316\317\"\320\"\321\322%\206O\323\"\210\211\242\237\240\210\242G\324\211W\203\344\211\211\2428\324V\203\212\325!	>\204{\326\327\330D\"\210\211\211\331\332
\206\206\323\"I\266\203\333\325!	>\204\235\326\327\330D\"\210\211\333H\334>\203\333r\211A\262\242q\210\325!	>\204\275\326\327\330D\"\210\211\211\335pI\266\325!	>\204\323\326\327\330D\"\210\211\211\336`I\266)\266\211T\262\202[\266\242\266\202\207" [eval-buffer-list cl-struct-backtrace-frame-tags plist-member :constructor (nil backtrace-make-frame) (:constructor :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:constructor)" mapbacktrace make-byte-code 1028 "\301\300\302\303\304\305	&\301\242B\240\207" vconcat vector [:evald :fun :args :flags] 14 "\n\n(fn EVALD FUN ARGS FLAGS)" backtrace-get-frames 0 type-of signal wrong-type-argument backtrace-frame 5 backtrace--locals 2 (eval-buffer eval-region) 6 7] 15 (#$ . 9412)])
(define-button-type 'backtrace-buffer-pos 'action 'backtrace--pop-to-buffer-pos 'help-echo "mouse-2, RET: Show reading position")
#@70 Pop to the buffer and position for the BUTTON at point.

(fn BUTTON)
(defalias 'backtrace--pop-to-buffer-pos #[257 "\300\301\"\300\302\"\303!\203\304!\210ed^]b\202\305\306!\207" [button-get backtrace-buffer backtrace-pos buffer-live-p pop-to-buffer message "Buffer has been killed"] 6 (#$ . 11106)])
#@115 Expressions to fontify in Backtrace mode.
Fontify these in addition to the expressions Emacs Lisp mode
fontifies.
(defconst backtrace--font-lock-keywords '((backtrace--match-ellipsis-in-string (1 'button prepend))) (#$ . 11422))
#@53 Default expressions to highlight in Backtrace mode.
(defconst backtrace-font-lock-keywords (append lisp-el-font-lock-keywords-for-backtraces backtrace--font-lock-keywords) (#$ . 11657))
#@48 Subdued level highlighting for Backtrace mode.
(defconst backtrace-font-lock-keywords-1 (append lisp-el-font-lock-keywords-for-backtraces-1 backtrace--font-lock-keywords) (#$ . 11849))
#@46 Gaudy level highlighting for Backtrace mode.
(defconst backtrace-font-lock-keywords-2 (append lisp-el-font-lock-keywords-for-backtraces-2 backtrace--font-lock-keywords) (#$ . 12040))
#@14 

(fn BOUND)
(defalias 'backtrace--match-ellipsis-in-string #[257 "\300\301\302#\205 \303`\304Z\305\"\205 \303`\306Z\305\"\205 \303`\307Z\305\"\207" [re-search-forward "\\(\\.\\.\\.\\)\"" t get-text-property 2 cl-print-ellipsis 3 4] 5 (#$ . 12229)])
(defalias 'backtrace--xref-backend #[0 "\300\207" [elisp] 1])
#@109 Stack frames displayed in the current Backtrace buffer.
This should be a list of `backtrace-frame' objects.
(defvar backtrace-frames nil (#$ . 12552))
(make-variable-buffer-local 'backtrace-frames)
#@133 A plist describing how to render backtrace frames.
Possible entries are :show-flags, :show-locals, :print-circle
and :print-gensym.
(defvar backtrace-view nil (#$ . 12757))
(make-variable-buffer-local 'backtrace-view)
#@194 Function for inserting a header for the current Backtrace buffer.
If nil, no header will be created.  Note that Backtrace buffers
are fontified as in Emacs Lisp Mode, the header text included.
(defvar backtrace-insert-header-function nil (#$ . 12982))
(make-variable-buffer-local 'backtrace-insert-header-function)
#@102 Hook run before reverting a Backtrace buffer.
This is commonly used to recompute `backtrace-frames'.
(defvar backtrace-revert-hook nil (#$ . 13304))
#@64 Function used to print values in the current Backtrace buffer.
(defvar backtrace-print-function 'cl-prin1 (#$ . 13459))
(make-variable-buffer-local 'backtrace-print-function)
#@434 Abnormal hook used to jump to the source code for the current frame.
Each hook function is called with no argument, and should return
non-nil if it is able to switch to the buffer containing the
source code.  Execution of the hook will stop if one of the
functions returns non-nil.  When adding a function to this hook,
you should also set the :source-available flag for the backtrace
frames where the source code location is known.
(defvar backtrace-goto-source-functions nil (#$ . 13641))
(make-variable-buffer-local 'backtrace-goto-source-functions)
#@44 Local keymap for `backtrace-mode' buffers.
(defvar backtrace-mode-map (byte-code "\302!\303	\"\210\304\305\306#\210\304\307\310#\210\304\311\312#\210\304\313\314#\210\304\315\316#\210\304\317\320#\210\304\321\322#\210\304\323\324#\210\304\325\326#\210\304\327\330#\210\304\331\332#\210\304\333\334#\210\335\336\337\340$\210\211\207" [special-mode-map button-buffer-map copy-keymap set-keymap-parent define-key "n" backtrace-forward-frame "p" backtrace-backward-frame "v" backtrace-toggle-locals "#" backtrace-toggle-print-circle ":" backtrace-toggle-print-gensym "s" backtrace-goto-source "
" backtrace-help-follow-symbol "+" backtrace-multi-line "-" backtrace-single-line "." backtrace-expand-ellipses [follow-link] mouse-face [mouse-2] mouse-select-window easy-menu-do-define nil "" ("Backtrace" ["Next Frame" backtrace-forward-frame :help "Move cursor forwards to the start of a backtrace frame"] ["Previous Frame" backtrace-backward-frame :help "Move cursor backwards to the start of a backtrace frame"] "--" ["Show Variables" backtrace-toggle-locals :style toggle :active (backtrace-get-index) :selected (plist-get (backtrace-get-view) :show-locals) :help "Show or hide the local variables for the frame at point"] ["Show Circular Structures" backtrace-toggle-print-circle :style toggle :active (backtrace-get-index) :selected (plist-get (backtrace-get-view) :print-circle) :help "Condense or expand shared or circular structures in the frame at point"] ["Show Uninterned Symbols" backtrace-toggle-print-gensym :style toggle :active (backtrace-get-index) :selected (plist-get (backtrace-get-view) :print-gensym) :help "Toggle unique printing of uninterned symbols in the frame at point"] ["Expand \"...\"s" backtrace-expand-ellipses :help "Expand all the abbreviated forms in the current frame"] ["Show on Multiple Lines" backtrace-multi-line :help "Use line breaks and indentation to make a form more readable"] ["Show on Single Line" backtrace-single-line] "--" ["Go to Source" backtrace-goto-source :active (and (backtrace-get-index) (plist-get (backtrace-frame-flags (nth (backtrace-get-index) backtrace-frames)) :source-available)) :help "Show the source code for the current frame"] ["Help for Symbol" backtrace-help-follow-symbol :help "Show help for symbol at point"] ["Describe Backtrace Mode" describe-mode :help "Display documentation for backtrace-mode"])] 6) (#$ . 14200))
#@57 Width in characters of the flags for a backtrace frame.
(defconst backtrace--flags-width 2 (#$ . 16612))
#@167 Return the index of the backtrace frame at POS.
The value is an index into `backtrace-frames', or nil.
POS, if omitted or nil, defaults to point.

(fn &optional POS)
(defalias 'backtrace-get-index #[256 "\300\206`\301\"\207" [get-text-property backtrace-index] 4 (#$ . 16724)])
(put 'backtrace-get-index 'byte-optimizer 'byte-compile-inline-expand)
#@112 Return the section of a backtrace frame at POS.
POS, if omitted or nil, defaults to point.

(fn &optional POS)
(defalias 'backtrace-get-section #[256 "\300\206`\301\"\207" [get-text-property backtrace-section] 4 (#$ . 17083)])
(put 'backtrace-get-section 'byte-optimizer 'byte-compile-inline-expand)
#@117 Return the view plist of the backtrace frame at POS.
POS, if omitted or nil, defaults to point.

(fn &optional POS)
(defalias 'backtrace-get-view #[256 "\300\206`\301\"\207" [get-text-property backtrace-view] 4 (#$ . 17393)])
(put 'backtrace-get-view 'byte-optimizer 'byte-compile-inline-expand)
#@124 Return the backtrace form data for the form printed at POS.
POS, if omitted or nil, defaults to point.

(fn &optional POS)
(defalias 'backtrace-get-form #[256 "\300\206`\301\"\207" [get-text-property backtrace-form] 4 (#$ . 17699)])
(put 'backtrace-get-form 'byte-optimizer 'byte-compile-inline-expand)
#@129 Return the beginning position of the frame at POS in the buffer.
POS, if omitted or nil, defaults to point.

(fn &optional POS)
(defalias 'backtrace-get-frame-start #[256 "\211\206`eU\204&\211\300\206`\301\"\262S\300\206`\301\"\262=\204*\211\2020\302\301\303e$\207" [get-text-property backtrace-index previous-single-property-change nil] 7 (#$ . 18012)])
#@130 Return the position of the end of the frame at POS in the buffer.
POS, if omitted or nil, defaults to point.

(fn &optional POS)
(defalias 'backtrace-get-frame-end #[256 "\300\206`\301\302d$\207" [next-single-property-change backtrace-index nil] 6 (#$ . 18390)])
#@50 Move forward to the beginning of the next frame.
(defalias 'backtrace-forward-frame #[0 "\300 \211dU\203\f\301\302!\210\211b\207" [backtrace-get-frame-end user-error "No next stack frame"] 3 (#$ . 18662) nil])
#@46 Move backward to the start of a stack frame.
(defalias 'backtrace-backward-frame #[0 "\300\301\206`\302\"\262\303 `dU\204\2032\211eU\2042\211`U\2036\211S\301\206+`\302\"\262\2046\304\305!\210\211`U\203D\303S!b\202F\211b\207" [nil get-text-property backtrace-index backtrace-get-frame-start user-error "No previous stack frame"] 6 (#$ . 18879) nil])
#@135 The `revert-buffer-function' for `backtrace-mode'.
It runs `backtrace-revert-hook', then calls `backtrace-print'.

(fn &rest IGNORED)
(defalias 'backtrace-revert #[128 "\300\301!\204\n\302\303!\210\304\305!\210\306\307!\207" [derived-mode-p backtrace-mode error "The current buffer is not in Backtrace mode" run-hooks backtrace-revert-hook backtrace-print t] 3 (#$ . 19252) nil])
#@81 Bind output variables according to VIEW and execute BODY.

(fn VIEW &rest BODY)
(defalias 'backtrace--with-output-variables '(macro . #[385 "\300\301\302\303\304\305BBD\306\304\307BBD\310BBBBBB\207" [let (print-escape-control-characters t) (print-escape-newlines t) print-circle plist-get (:print-circle) print-gensym (:print-gensym) ((standard-output (current-buffer)))] 10 (#$ . 19639)]))
(byte-code "\300\301\302\303#\300\207" [function-put backtrace--with-output-variables lisp-indent-function 1] 4)
#@230 Toggle the display of local variables for the backtrace frame at point.
With prefix argument ALL, toggle the value of :show-locals in
`backtrace-view', which affects all of the backtrace frames in
the buffer.

(fn &optional ALL)
(defalias 'backtrace-toggle-locals #[256 "\211\203N\301 \302\303\"?\304\303#\305\306\"\210`\307\223\210eb\210\307\310\206%`\311\"\262\2040\312 b\210`dW\203A\313!\210\312 b\210\2020b\210\314!\205M\315 b\207\307\310\206U`\311\"\262\211\204a\316\317!\210\313\302\307\310\206j`\300\"\262\303\"?!\207" [backtrace-view make-marker plist-get :show-locals plist-put set-marker-insertion-type t nil get-text-property backtrace-index backtrace-get-frame-end backtrace--set-frame-locals-visible invisible-p backtrace-get-frame-start user-error "Not in a stack frame"] 8 (#$ . 20155) "P"])
#@87 Set the visibility of the local vars for the frame at point to VISIBLE.

(fn VISIBLE)
(defalias 'backtrace--set-frame-locals-visible #[257 "`\306\307\206`\310\"\262\311 \312 \313\306\307\206`\314\"\262!\315\316\317#\262\311 b\210`U\204L\306\307\2068`\320\"\262\321=\204L\322`\320\306$b\210\202+`U\203\201\203\201p\315\211\323\324\"\323\325\"p\3268\"\210-\327`\310D#\210b\210)\202\233`U\204\233\330`#\210\331!\203\230\202\231b\210\327\312 \314D#)\207" [inhibit-read-only standard-output print-gensym print-circle print-escape-newlines print-escape-control-characters nil get-text-property backtrace-index backtrace-get-frame-start backtrace-get-frame-end copy-sequence backtrace-view t plist-put :show-locals backtrace-section locals next-single-property-change plist-get :print-circle :print-gensym backtrace--print-locals add-text-properties backtrace--set-locals-visible-overlay invisible-p backtrace-frames] 12 (#$ . 20992)])
#@24 

(fn BEG END VISIBLE)
(defalias 'backtrace--set-locals-visible-overlay #[771 "\300?#\210\211\203\301\302\303$\207\304\"\305\302\303#\210\305\306\303#\207" [backtrace--change-button-skip remove-overlays invisible t make-overlay overlay-put evaporate] 8 (#$ . 21981)])
#@150 Change the skip property on all buttons between BEG and END.
Set it to VALUE unless the button is a `backtrace-ellipsis' button.

(fn BEG END VALUE)
(defalias 'backtrace--change-button-skip #[771 "\301\302!\262\205+W\205+\303\304\"\262\305=\204#\306\307#\210\302!\262\202)\207" [inhibit-read-only t next-button button-get type backtrace-ellipsis button-put skip] 7 (#$ . 22267)])
#@186 Toggle `print-circle' for the backtrace frame at point.
With prefix argument ALL, toggle the default value bound to
`print-circle' for all the frames in the buffer.

(fn &optional ALL)
(defalias 'backtrace-toggle-print-circle #[256 "\300\301\"\207" [backtrace--toggle-feature :print-circle] 4 (#$ . 22672) "P"])
#@186 Toggle `print-gensym' for the backtrace frame at point.
With prefix argument ALL, toggle the default value bound to
`print-gensym' for all the frames in the buffer.

(fn &optional ALL)
(defalias 'backtrace-toggle-print-gensym #[256 "\300\301\"\207" [backtrace--toggle-feature :print-gensym] 4 (#$ . 22992) "P"])
#@339 Toggle FEATURE for the current backtrace frame or for the buffer.
FEATURE should be one of the options in `backtrace-view'.  If ALL
is non-nil, toggle FEATURE for all frames in the buffer.  After
toggling the feature, reprint the affected frame(s).  Afterwards
position point at the start of the frame it was in before.

(fn FEATURE ALL)
(defalias 'backtrace--toggle-feature #[514 "\211\203\207\301\302\206`\303\"\262``dU\304\"?\305#eb\210\301\302\206*`\303\"\262\2045\306 b\210`dW\203H\307\"\210\306 b\210\2025\204Z\203Td\202Ub\210\202{eb\210\310\301\302\206f`\303\"\262\"\204{`dW\203{\306 b\210\202]\311\312\313\314	!\315\"#\207\301\302\206\216`\303\"\262\204\231\316\317!\210\304\301\302\206\241`\300\"\262\"?\307\"\210\311\320\313\314!\315\"#\207" [backtrace-view nil get-text-property backtrace-index plist-get plist-put backtrace-get-frame-end backtrace--set-feature eql message "%s is now %s for all frames" substring symbol-name 1 user-error "Not in a stack frame" "%s is now %s for this frame"] 12 (#$ . 23312)])
#@126 Set FEATURE in the view plist of the frame at point to VALUE.
Reprint the frame with the new view plist.

(fn FEATURE VALUE)
(defalias 'backtrace--set-feature #[514 "\302\303\304\305\206	`\306\"\262!\304\305\206`\307\"\262\310 \311 \312#\262|\210b\210\313	8\"\210\314`\307\306	F#\210b)\207" [inhibit-read-only backtrace-frames t copy-sequence nil get-text-property backtrace-view backtrace-index backtrace-get-frame-start backtrace-get-frame-end plist-put backtrace-print-frame add-text-properties] 14 (#$ . 24392)])
#@59 Expand display of the elided form at BUTTON.

(fn BUTTON)
(defalias 'backtrace-expand-ellipsis #[257 "\306!b\210\307`\310\"\204$`eV\203 \307`S\310\"\203 \311u\210\202$\312\313!\210\314`\310\"\315\310\"\307\310\"\316!\317\211\317\320\321\307\206?`\322\"\262\323\"\320\321\307\206M`\322\"\262\324\"p|\210\325\326#c\210`\262b\210`W\203\215\314`\310\321$\307`\310\"\203\206\327`\330\331$\210\211b\266\202kb\210\332#.\207" [inhibit-read-only standard-output print-gensym print-circle print-escape-newlines print-escape-control-characters button-start get-text-property cl-print-ellipsis -1 user-error "No ellipsis to expand here" next-single-property-change previous-single-property-change backtrace-get-text-properties t plist-get nil backtrace-view :print-circle :print-gensym cl-print-to-string-with-limit cl-print-expand-ellipsis make-text-button :type backtrace-ellipsis add-text-properties backtrace-line-length] 14 (#$ . 24940) nil])
#@515 Expand display of all "..."s in the backtrace frame at point.
\<backtrace-mode-map>
Each ellipsis will be limited to `backtrace-line-length'
characters in its expansion.  With optional prefix argument
NO-LIMIT, do not limit the number of characters.  Note that with
or without the argument, using this command can result in very
long lines and very poor display performance.  If this happens
and is a problem, use `\[revert-buffer]' to return to the
initial state of the Backtrace buffer.

(fn &optional NO-LIMIT)
(defalias 'backtrace-expand-ellipses #[256 "\212\301 \302 ?\205\211b\210`V\205-\303`\304\305$\306`\304\"\203&\307`!\210\211b\266\202)\266\202)\207" [backtrace-line-length backtrace-get-frame-start backtrace-get-frame-end previous-single-property-change cl-print-ellipsis nil get-text-property push-button] 8 (#$ . 25923) "P"])
#@78 Show the top level s-expression at point on multiple lines with indentation.
(defalias 'backtrace-multi-line #[0 "\300\301!\207" [backtrace--reformat-sexp backtrace--multi-line] 2 (#$ . 26782) nil])
#@68 Pretty print the current buffer, then remove the trailing newline.
(defalias 'backtrace--multi-line #[0 "\301!\210\302 \210dSb\210\303\304!\207" [emacs-lisp-mode-syntax-table set-syntax-table pp-buffer delete-char 1] 2 (#$ . 26987)])
#@55 Show the top level s-expression at point on one line.
(defalias 'backtrace-single-line #[0 "\300\301!\207" [backtrace--reformat-sexp backtrace--single-line] 2 (#$ . 27228) nil])
#@89 Replace line breaks and following indentation with spaces.
Works on the current buffer.
(defalias 'backtrace--single-line #[0 "eb\210\300\301\302\303#\205\304\305!\210\202\207" [re-search-forward "\n[[:blank:]]*" nil t replace-match " "] 4 (#$ . 27412)])
#@433 Reformat the top level sexp at point.
Locate the top level sexp at or following point on the same line,
and reformat it with FORMAT-FUNCTION, preserving the location of
point within the sexp.  If no sexp is found before the end of
the line or buffer, signal an error.

FORMAT-FUNCTION will be called without arguments, with the
current buffer set to a temporary buffer containing only the
content of the sexp.

(fn FORMAT-FUNCTION)
(defalias 'backtrace--reformat-sexp #[257 "``\211\301\206	`\302\"\262\303\302\"\304\302\305e$\204@dU\204(\306 V\203,\307\310!\210b\210\262\303\302\"\262\304\302\305e$\262Y\205IZ\211\205O\311 {\312!\313|\210\314\315!r\211q\210\316\317\320\321\322!\323\"\324$\216c\210\203\203\325\313\"\210e\\\305\223\210\n \210\203\222\326!eZ\262\327 *\262c\210\203\244\\\305\223\210\212b\210\330 \210)\331`#\210\203\275\326!b\202\300b)\266\204\207" [inhibit-read-only get-text-property backtrace-form next-single-property-change previous-single-property-change nil point-at-eol user-error "No form here to reformat" make-marker backtrace-get-text-properties t generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205	\302\300!\207" vconcat vector [buffer-name kill-buffer] 2 set-marker-insertion-type marker-position buffer-string indent-sexp add-text-properties] 17 (#$ . 27678)])
#@70 Return a plist of backtrace-mode's text properties at POS.

(fn POS)
(defalias 'backtrace-get-text-properties #[257 "\300\301\302\303\304\305\306\307!\310\"\311\312%\313\"\"\207" [apply append mapcar make-byte-code 257 "\211\301\300\"D\207" vconcat vector [get-text-property] 5 "\n\n(fn PROP)" (backtrace-section backtrace-index backtrace-view backtrace-form)] 10 (#$ . 29047)])
#@75 If its location is known, jump to the source code for the frame at point.
(defalias 'backtrace-goto-source #[0 "\303\304\206`\305\"\262\206\306\307!\2118\310\311!	>\204$\312\313\314D\"\210\315H\316\"\211\205L\3172L\n\211\205I\211@\211 \203B\320\317\321\"\210A\266\202\2022\2620?\205S\306\322!\207" [backtrace-frames cl-struct-backtrace-frame-tags backtrace-goto-source-functions nil get-text-property backtrace-index user-error "Not in a stack frame" plist-get type-of signal wrong-type-argument backtrace-frame 4 :source-available done throw t "Source code location not known"] 8 (#$ . 29435) nil])
#@128 Follow cross-reference at POS, defaulting to point.
For the cross-reference format, see `help-make-xrefs'.

(fn &optional POS)
(defalias 'backtrace-help-follow-symbol #[256 "\211\204`\262\300!?\2057\301\212b\210\302\303!\210`\304\303!\210`{)!\305!\2042\306!\2042\307!\2055\310!\262\207" [push-button intern skip-syntax-backward "w_" skip-syntax-forward boundp fboundp facep describe-symbol] 5 (#$ . 30061) "d"])
#@309 Populate the current Backtrace mode buffer.
This erases the buffer and inserts printed representations of the
frames.  Optional argument REMEMBER-POS, if non-nil, means to
move point to the entry with the same ID element as the current
line and recenter window line accordingly.

(fn &optional REMEMBER-POS)
(defalias 'backtrace-print #[256 "\304\305\211\211\203)\305\306\206`\307\"\262\211\262\203)\310 p=\203)\311\312 `\"\262\313 \210	\2033	 \210\nG\314\211W\203k\211`\n8\203S\232\203S\305\262`\262\315\"\210\316`\307\303F#\266\211T\262\2026\266\317\305!\210\203\202b\210\211\205\204\320!\202\204eb)\207" [inhibit-read-only backtrace-insert-header-function backtrace-frames backtrace-view t nil get-text-property backtrace-index window-buffer count-screen-lines window-start erase-buffer 0 backtrace-print-frame add-text-properties set-buffer-modified-p recenter] 17 (#$ . 30494)])
(define-button-type 'backtrace-ellipsis 'skip t 'action 'backtrace-expand-ellipsis 'help-echo "mouse-2, RET: expand this ellipsis")
#@271 Return a printed representation of OBJ formatted for backtraces.
Attempt to get the length of the returned string under LIMIT
characters with appropriate settings of `print-level' and
`print-length.'  LIMIT defaults to `backtrace-line-length'.

(fn OBJ &optional LIMIT)
(defalias 'backtrace-print-to-string #[513 "\306\211\307\310\"\307\311\"p\312\"-\207" [backtrace-view standard-output print-gensym print-circle print-escape-newlines print-escape-control-characters t plist-get :print-circle :print-gensym backtrace--print-to-string] 8 (#$ . 31558)])
#@29 

(fn SEXP &optional LIMIT)
(defalias 'backtrace--print-to-string #[513 "\211\206\262\301\302!r\211q\210\303\304\305\306\307!\310\"\311$\216\312\313#c\210\314e`\315\316 $\210eb\210`dW\203M\317`\320\321d$\322`\320\"\203F\323`\324\325$\210\211b\266\202,\326 *\207" [backtrace-line-length generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205	\302\300!\207" vconcat vector [buffer-name kill-buffer] 2 cl-print-to-string-with-limit backtrace--print put-text-property backtrace-form gensym next-single-property-change cl-print-ellipsis nil get-text-property make-text-button :type backtrace-ellipsis buffer-string] 9 (#$ . 32126)])
#@177 Insert a backtrace FRAME at point formatted according to VIEW.
Tag the sections of the frame with the `backtrace-section' text
property for use by navigation.

(fn FRAME VIEW)
(defalias 'backtrace-print-frame #[514 "\305\211\306\307\"\306\310\"p\311\"\210\312\"\210\313\"-\207" [standard-output print-gensym print-circle print-escape-newlines print-escape-control-characters t plist-get :print-circle :print-gensym backtrace--print-flags backtrace--print-func-and-args backtrace--print-locals] 8 (#$ . 32781)])
#@75 Print the flags of a backtrace FRAME if enabled in VIEW.

(fn FRAME VIEW)
(defalias 'backtrace--print-flags #[514 "`\302\303!>\204\304\305\306D\"\210\307H\310\"\302\303!>\204(\304\305\306D\"\210\307H\311\"\302\312\"\203B\211\203;\313c\210\203B\314c\210\315	`ZZ\316\"c\210\317`\320\321$\207" [cl-struct-backtrace-frame-tags backtrace--flags-width plist-get type-of signal wrong-type-argument backtrace-frame 4 :debug-on-exit :source-available :show-flags ">" "*" make-string 32 put-text-property backtrace-section func] 10 (#$ . 33311)])
#@119 Print the function, arguments and buffer position of a backtrace FRAME.
Format it according to VIEW.

(fn FRAME VIEW)
(defalias 'backtrace--print-func-and-args #[514 "`\304!>\204\305\306\307D\"\210\310H\304!>\204#\305\306\307D\"\210\311H\304!>\2046\305\306\307D\"\210\312H\313!\314\315\"\206W\316!\205W\317!A\320=?\205W\321\"`\203\237	\204\237:\204l\n!\210\202x\322\205u\311\245\"c\210\203\220\322\323\324\245!`ZZ]\"c\210\202\254`\325c\210\326`\327\330$\266\202\254B\322!c\266\211T\262\203\304\331\211\322!G\\\332\333\334\nD&\210\304	!>\204\325\305\306\307D\"\210\335H\203/\336c\210`\337\340\304\f!>\204\363\305\306\307D\"\210\335H\"c\210\341`\332\342\343\304!>\204\305\306\307D\"\210\344H\345\304!>\204'\305\306\307D\"\210\335H&\266\346c\210\326`\347\350$\207" [cl-struct-backtrace-frame-tags debugger-stack-frame-as-list backtrace-print-function backtrace-line-length type-of signal wrong-type-argument backtrace-frame 1 2 3 find-function-advised-original symbol-file defun subrp subr-arity unevalled find-lisp-object-file-name backtrace--print-to-string truncate 5 "()" put-text-property backtrace-form t make-text-button :type help-function-def help-args 7 "  ; Reading at " format "buffer position %d" make-button backtrace-buffer-pos backtrace-buffer 6 backtrace-pos "\n" backtrace-section func] 22 (#$ . 33875)])
#@141 Print a backtrace FRAME's local variables according to VIEW.
Print them only if :show-locals is non-nil in the VIEW plist.

(fn FRAME VIEW)
(defalias 'backtrace--print-locals #[514 "\301\302\"\205T`\303!>\204\304\305\306D\"\210\307H\211\204$\310c\210\202L\211\211\203K\211@\211@A\211\311c\210\312!\210\313c\210\314!c\210\315c\266A\266\202\202%\210\316`\317\320$\266\202\207" [cl-struct-backtrace-frame-tags plist-get :show-locals type-of signal wrong-type-argument backtrace-frame 5 "    [no locals]\n" "    " backtrace--print " = " backtrace--print-to-string "\n" put-text-property backtrace-section locals] 12 (#$ . 35302)])
#@136 Attempt to print OBJ to STREAM using `backtrace-print-function'.
Fall back to `prin1' if there is an error.

(fn OBJ &optional STREAM)
(defalias 'backtrace--print #[513 "\3011\n\"0\207\302\303\"\210\304\"\207" [backtrace-print-function (error) message "Error in backtrace printer: %S" prin1] 6 (#$ . 35955)])
#@66 Update the display of the flags in the backtrace frame at point.
(defalias 'backtrace-update-flags #[0 "\304\305\206`\306\"\262\307 \310\311\"\205=\212\211b\210\312!\313p\314\n!\210\315\304\305\206+`\316\"\2628\"\210\317`#*\262)\207" [standard-output inhibit-read-only backtrace--flags-width backtrace-frames nil get-text-property backtrace-view backtrace-get-frame-start plist-get :show-flags backtrace-get-text-properties t delete-char backtrace--print-flags backtrace-index add-text-properties] 8 (#$ . 36277)])
#@77 Return the visible text between BEG and END.

(fn BEG END &optional DELETE)
(defalias 'backtrace--filter-visible #[770 "\300W\203 \301\302\"\303\302\"\204^{P\262\262\202\211\207" ["" next-single-char-property-change invisible get-char-property] 9 (#$ . 36815)])
(defvar backtrace-mode-hook nil)
(byte-code "\300\301N\204\f\302\300\301\303#\210\304\305!\204\302\305\306\307#\210\300\207" [backtrace-mode-hook variable-documentation put "Hook run after entering Backtrace mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp backtrace-mode-map definition-name backtrace-mode] 4)
(defvar backtrace-mode-map (make-sparse-keymap))
(byte-code "\301\302N\204\303\301\302\304\305!#\210\306\300!\204#\303\300\307\310#\210\311\312\300\313\"\210!\210\300\302N\2041\303\300\302\304\314!#\210\303\310\315\316#\207" [backtrace-mode-abbrev-table backtrace-mode-map variable-documentation put purecopy "Keymap for `backtrace-mode'." boundp definition-name backtrace-mode (lambda (#1=#:def-tmp-var) (defvar backtrace-mode-abbrev-table #1#)) define-abbrev-table nil "Abbrev table for `backtrace-mode'." derived-mode-parent special-mode] 5)
#@1625 Generic major mode for examining an Elisp stack backtrace.
This mode can be used directly, or other major modes can be
derived from it, using `define-derived-mode'.

In this major mode, the buffer contains some optional lines of
header text followed by backtrace frames, each consisting of one
or more whole lines.

Letters in this mode do not insert themselves; instead they are
commands.
\<backtrace-mode-map>
\{backtrace-mode-map}

A mode which inherits from Backtrace mode, or a command which
creates a backtrace-mode buffer, should usually do the following:

 - Set `backtrace-revert-hook', if the buffer contents need
   to be specially recomputed prior to `revert-buffer'.
 - Maybe set `backtrace-insert-header-function' to a function to create
   header text for the buffer.
 - Set `backtrace-frames' (see below).
 - Maybe modify `backtrace-view' (see below).
 - Maybe set `backtrace-print-function'.

A command which creates or switches to a Backtrace mode buffer,
such as `ert-results-pop-to-backtrace-for-test-at-point', should
initialize `backtrace-frames' to a list of `backtrace-frame'
objects (`backtrace-get-frames' is provided for that purpose, if
desired), and may optionally modify `backtrace-view', which is a
plist describing the appearance of the backtrace.  Finally, it
should call `backtrace-print'.

`backtrace-print' calls `backtrace-insert-header-function'
followed by `backtrace-print-frame', once for each stack frame.

In addition to any hooks its parent mode `special-mode' might have run,
this mode runs the hook `backtrace-mode-hook', as the final or penultimate step
during initialization.
(defalias 'backtrace-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\321\"\204;\f
=\204;\322\f\321
C#\210\323!\210\324%!\210\f&\203N\325'\307(\326 \210\306\327!\210\330\306\331!\210\332\306\333!\210\334\306\335!\210\336\337\340\341\342\307$\210)\343\344!\207" [delay-mode-hooks major-mode mode-name backtrace-mode-map backtrace-mode-abbrev-table local-abbrev-table make-local-variable t special-mode backtrace-mode "Backtrace" mode-class put keymap-parent set-keymap-parent current-local-map abbrev-table-get :parents abbrev-table-put use-local-map set-syntax-table ((backtrace-font-lock-keywords backtrace-font-lock-keywords-1 backtrace-font-lock-keywords-2) nil nil nil nil (font-lock-syntactic-face-function . lisp-font-lock-syntactic-face-function)) buffer-disable-undo revert-buffer-function backtrace-revert filter-buffer-substring-function backtrace--filter-visible indent-line-function lisp-indent-line indent-region-function lisp-indent-region add-hook xref-backend-functions backtrace--xref-backend nil run-mode-hooks backtrace-mode-hook emacs-lisp-mode-syntax-table backtrace-fontify font-lock-defaults truncate-lines] 5 (#$ . 38056) nil])
(put 'backtrace-mode 'mode-class 'special)
#@106 Print a trace of Lisp function calls currently active.
Output stream used is value of `standard-output'.
(defalias 'backtrace #[0 "\300\301\302\303!!!\210\304\207" [princ backtrace-to-string backtrace-get-frames backtrace nil] 4 (#$ . 40973)])
#@179 Format FRAMES, a list of `backtrace-frame' objects, for output.
Return the result as a string.  If FRAMES is nil, use all
function calls currently active.

(fn &optional FRAMES)
(defalias 'backtrace-to-string #[256 "\300\301\206	\302\303!!!\207" [substring-no-properties backtrace--to-string backtrace-get-frames backtrace-to-string] 5 (#$ . 41224)])
#@15 

(fn FRAMES)
(defalias 'backtrace--to-string #[257 "\304\305\306!r\211q\210\307\310\311\312\313!\314\"\315$\216\316 \210\317\320\321 \210\322ed\"*\262)\207" [backtrace-fontify backtrace-view backtrace-frames backtrace-print-function nil generate-new-buffer " *temp*" make-byte-code 0 "\301\300!\205	\302\300!\207" vconcat vector [buffer-name kill-buffer] 2 backtrace-mode (:show-flags t) cl-prin1 backtrace-print filter-buffer-substring] 8 (#$ . 41583)])
(provide 'backtrace)

Zerion Mini Shell 1.0