;ELC   
;;; Compiled
;;; in Emacs version 28.2
;;; with all optimizations.



(byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\207" [require eieio find-func speedbar cl-extra] 2)
#@185 Create an object browser window to show all objects.
If optional ROOT-CLASS, then start with that, otherwise start with
variable `eieio-default-superclass'.

(fn &optional ROOT-CLASS)
(defalias 'eieio-browse #[256 "\211\204 \300\262\301!\204 \302\303\304\305E\"\210\306\307\310!\311\"\210r\312\310!q\210\313 \210\314b\210\315\316\211#)\207" [eieio-default-superclass class-p signal wrong-type-argument class root-class display-buffer get-buffer-create "*EIEIO OBJECT BROWSE*" t get-buffer erase-buffer 0 eieio-browse-tree ""] 6 (#$ . 198) (byte-code "\205 \301\302\303\304 \305\306$!C\207" [current-prefix-arg read completing-read "Class: " eieio-build-class-alist nil t] 6)])
#@255 Recursively draw the children of the given class on the screen.
Argument THIS-ROOT is the local root of the tree.
Argument PREFIX is the character prefix to use.
Argument CH-PREFIX is another character prefix to display.

(fn THIS-ROOT PREFIX CH-PREFIX)
(defalias 'eieio-browse-tree #[771 "\300!\204 \301\302\303\304E\"\210\305!\306N\211\307H\262\310P\311P\312P\313\261\210A\203< \314@#\210A\262\202) \205F \314@#\207" [class-p signal wrong-type-argument class this-root symbol-name cl--class 6 "  +--" "  |  " "     " "\n" eieio-browse-tree] 12 (#$ . 890)])
(byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias eieio-help-class cl--describe-class nil make-obsolete "25.1"] 4)
#@365 Return an alist of all currently active classes for completion purposes.
Optional argument CLASS is the class to start with.
If INSTANTIABLE-ONLY is non-nil, only allow names of classes which
are not abstract, otherwise allow all classes.
Optional argument BUILDLIST is more list to attach and is used internally.

(fn &optional CLASS INSTANTIABLE-ONLY BUILDLIST)
(defalias 'eieio-build-class-alist #[768 "\206 \300\211\301N\211\302H\262\303\304!\"\204) \203  \305!\204) \304!\306BB\262\211\211\203@ \211@\307#\262A\266\202\202* \210\207" [eieio-default-superclass cl--class 6 assoc symbol-name class-abstract-p 1 eieio-build-class-alist] 11 (#$ . 1610)])
#@52 History of the function `eieio-read-class' prompt.
(defvar eieio-read-class nil (#$ . 2290))
#@242 Return a class chosen by the user using PROMPT.
Optional argument HISTVAR is a variable to use as history.
If INSTANTIABLE-ONLY is non-nil, only allow names of classes which
are not abstract.

(fn PROMPT &optional HISTVAR INSTANTIABLE-ONLY)
(defalias 'eieio-read-class #[769 "\300\301\302\303\"\303\304\303\206 \305&!\207" [intern completing-read eieio-build-class-alist nil t eieio-read-class] 11 (#$ . 2390)])
#@318 Return a class chosen by the user using PROMPT.
CLASS is the base class, and completion occurs across all subclasses.
Optional argument HISTVAR is a variable to use as history.
If INSTANTIABLE-ONLY is non-nil, only allow names of classes which
are not abstract.

(fn PROMPT CLASS &optional HISTVAR INSTANTIABLE-ONLY)
(defalias 'eieio-read-subclass #[1026 "\300\301\302\"\303\304\303\206 \305&!\207" [intern completing-read eieio-build-class-alist nil t eieio-read-class] 12 (#$ . 2815)])
#@54 Describe CTR if it is a class constructor.

(fn CTR)
(defalias 'eieio-help-constructor #[257 "\300!\205\200 \301 \210\302\303\"Keb\210\304!\210\305\306\211\242\307=\262\203& \310\202' \311\"c\210\211\211\242\307=\262\203> \204> \302\"\262\203Z \312\313!c\210\314\315!\210\316\317!\320\303%\210\312\321!c\210\322\323!\324\261\210db\210\211\211\242\307=\262\203r \325c\207\212\326\327\330\331#c\210\332!)\266\202\207" [class-p erase-buffer find-lisp-object-file-name define-type prin1 format " is an %sobject constructor function" autoload "autoloaded " "" substitute-command-keys " in `" require cl-extra help-insert-xref-button help-fns-short-filename cl-type-definition "'" ".\nCreates an object of class " symbol-name "." "\n\n[Class description not available until class definition is loaded.]\n" propertize "\n\nClass description:\n" face bold cl--describe-class] 9 (#$ . 3317)])
#@63 Display a list of all the methods and what features are used.
(defalias 'eieio-display-method-list #[0 "\301 \302\303\"\304\305!\306\307\310\311G\306\"\306\211\312!\210\313 \210\211\2033 \211@\314!\210\314\315!\210A\266\202\202 \210\314\316!\210\317 \210\314\320!\210\317 \210\211\203\307 \211@\211\321N\322\211\211\n\211\203\221 \211@JHGJJH\\I\210\323!\210\314\315!\210\306W\203\211 \324=\203\206 \325\262\262\202\212 \325\262\210A\266\202\202R \210\203\262 \211\204\262 T\262\326U\203\256 T\262\314\327!\210\314\330!\210\323!\210\317 \210T\262\f\266A\266\202\202D \210\314\320!\210\317 \210\211\203\350 \211@\323JH!\210\314\315!\210A\266\202\202\320 \210\323!\210\314\331!\210\317 \210\211\203\211@\314!\210\314\315!\210A\266\202\202\366 \210\317 \210\317 \210\314\332!\210\323!\210\314\315!\210\314\333\334\335\336_\n\"\"!\210\314\337!\210\317 \210\314\340!\210\323!\210\314\315!\210\314\333\334\335\336_\"\"!\210\314\341!\210\317 )\207" [standard-output cl-generic-all-functions sort #[514 "\300!\300!\231\207" [symbol-name] 5 "\n\n(fn A B)"] get-buffer-create "*EIEIO Method List*" 0 (method-static method-before method-primary method-after method-generic-before method-generic-primary method-generic-after) ("static" "before" "primary" "after" "G bef" "G prim" "G aft") make-vector switch-to-buffer-other-window erase-buffer princ "	" "Method Name" terpri "--------------------------------------------------------------------" eieio-method-tree nil prin1 method-primary t 1 "*" "* " " Total symbols" "Methods Primary Only: " format "%d" floor 100.0 "% of total methods" "Only One Primary Impl: " "% of total primary methods"] 23 (#$ . 4226) nil])
#@54 Keymap used when working with a project in speedbar.
(defvar eieio-class-speedbar-key-map nil (#$ . 5948))
#@41 Make a keymap for EIEIO under speedbar.
(defalias 'eieio-class-speedbar-make-map #[0 "\301 \302\303\304#\210\302\305\306#\210\302\307\310#\207" [eieio-class-speedbar-key-map speedbar-make-specialized-keymap define-key "" speedbar-edit-line "+" speedbar-expand-line "-" speedbar-contract-line] 4 (#$ . 6061)])
(byte-code "\204	 \301\302\303\"\210\301\207" [eieio-class-speedbar-key-map eval-after-load speedbar #[0 "\300 \210\301\302!\207" [eieio-class-speedbar-make-map speedbar-add-expansion-list ("EIEIO" eieio-class-speedbar-menu eieio-class-speedbar-key-map eieio-class-speedbar)] 2]] 3)
#@70 Menu part in easymenu format used in speedbar while in `eieio' mode.
(defvar eieio-class-speedbar-menu nil (#$ . 6665))
#@180 Create buttons in speedbar that represents the current project.
DIR-OR-OBJECT is the object to expand, or nil, and DEPTH is the
current expansion depth.

(fn DIR-OR-OBJECT DEPTH)
(defalias 'eieio-class-speedbar #[514 "ed=\205 \300\301\302\"\210\303y\210\304 \207" [eieio-class-button eieio-default-superclass 0 -1 speedbar-expand-line] 5 (#$ . 6792)])
#@83 Draw a speedbar button at the current point for CLASS at DEPTH.

(fn CLASS DEPTH)
(defalias 'eieio-class-button #[514 "\300!\204 \301\302\303\303E\"\210\304N\211\305H\262\211\203- \306\307\310\311\312!\313	\314\n&	\207\306\307\315\316\211\312!\313	\314\n&	\207" [class-p signal wrong-type-argument class cl--class 6 speedbar-make-tag-line angle 43 eieio-sb-expand symbol-name eieio-describe-class-sb speedbar-directory-face 32 nil] 13 (#$ . 7151)])
#@125 For button TEXT, expand CLASS at the current location.
Argument INDENT is the depth of indentation.

(fn TEXT CLASS INDENT)
(defalias 'eieio-sb-expand #[771 "\301\302\"\2033 \303\304!\210\305\212\306\210\307u\210\310N\211\311H\262\211\203. \312@T\"\210\211A\262\202 \210*\202I \301\313\"\203E \303\314!\210\315!\210\202I \316\317!\210\320 \207" [inhibit-read-only string-search "+" speedbar-change-expand-button-char 45 t nil 1 cl--class 6 eieio-class-button "-" 43 speedbar-delete-subblock error "Ooops...  not sure what to do" speedbar-center-buffer-smartly] 7 (#$ . 7622)])
#@100 Describe the class TEXT in TOKEN.
INDENT is the current indentation level.

(fn TEXT TOKEN INDENT)
(defalias 'eieio-describe-class-sb #[771 "\300 r\301\302\"\216\303 \210\304!\210\305 \210*\210\305 \207" [internal--before-save-selected-window make-closure #[0 "\301\300!\207" [V0 internal--after-save-selected-window] 2] dframe-select-attached-frame describe-function dframe-maybee-jump-to-attached-frame] 7 (#$ . 8217)])
(provide 'eieio-opt)
