MMCT TEAM
Server IP : 111.118.215.189  /  Your IP : 18.117.158.174
Web Server : Apache
System : Linux md-in-83.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64
User : a1673wkz ( 2475)
PHP Version : 8.2.25
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : ON
Directory (0755) :  /usr/share/emacs/24.3/lisp/progmodes/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/progmodes/ebrowse.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:09:23 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el
;;; in Emacs version 24.3.1
;;; 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\306\314\310\305\315\316&\210\312\317\306\320\310\305\315\321&\210\312\322\306\323\310\305\315\321&\210\312\324\306\325\310\305\315\321&\210\312\326\327\330\310\305\315\331&\210\304\332\306\333\310\305%\210\312\334\306\335\310\332\315\321&\210\312\336\337\340\310\332\315\341&\210\312\342\343\344\310\332\315\331&\210\312\345\346\347\310\332\315\331&\210\312\350\351\352\310\332\315\331&\210\304\353\306\354\310\305%\210\312\355\356\357\310\353\315\331&\210\312\360\356\361\310\353\315\331&\210\312\362\363\364\310\353\315\341&\210\312\365\306\366\310\353\315\321&\210\304\367\306\370\310\305%\210\371\372\373\374\310\367%\210\371\375\376\377\310\367%\210\371\201@\201A\201B\310\367%\210\371\201C\201D\201E\310\367%\210\371\201F\201G\201H\310\367%\210\371\201I\201J\201K\310\367%\210\371\201L\201M\201N\310\367%\207" [require easymenu view ebuff-menu custom-declare-group ebrowse nil "Settings for the C++ class browser." :group tools custom-declare-variable ebrowse-search-path "List of directories to search for source files in a class tree.\nElements should be directory names; nil as an element means to try\nto find source files relative to the location of the BROWSE file loaded." :type (repeat (choice (const :tag "Default" nil) (string :tag "Directory"))) ebrowse-view/find-hook "Hooks run after finding or viewing a member or class." hook ebrowse-not-found-hook "Hooks run when finding or viewing a member or class was not successful." ebrowse-electric-list-mode-hook "Hook called by `ebrowse-electric-position-mode'." ebrowse-max-positions 50 "Number of markers saved on electric position stack." integer ebrowse-tree "Settings for class tree buffers." ebrowse-tree-mode-hook "Hook run in each new tree buffer." ebrowse-tree-buffer-name "*Tree*" "The default name of class tree buffers." string ebrowse--indentation 4 "The amount by which subclasses are indented in the tree." ebrowse-source-file-column 40 "The column in which source file names are displayed in the tree." ebrowse-tree-left-margin 2 "Amount of space left at the left side of the tree display.\nThis space is used to display markers." ebrowse-member "Settings for member buffers." ebrowse-default-declaration-column 25 "The column in which member declarations are displayed in member buffers." ebrowse-default-column-width "The width of the columns in member buffers (short display form)." ebrowse-member-buffer-name "*Members*" "The name of the buffer for member display." ebrowse-member-mode-hook "Run in each new member buffer." ebrowse-faces "Faces used by Ebrowse." custom-declare-face ebrowse-tree-mark ((((min-colors 88)) :foreground "red1") (t :foreground "red")) "Face for the mark character in the Ebrowse tree." ebrowse-root-class ((((min-colors 88)) :weight bold :foreground "blue1") (t :weight bold :foreground "blue")) "Face for root classes in the Ebrowse tree." ebrowse-file-name ((t :slant italic)) "Face for filenames in the Ebrowse tree." ebrowse-default ((t)) "Face for items in the Ebrowse tree which do not have other faces." ebrowse-member-attribute ((((min-colors 88)) :foreground "red1") (t :foreground "red")) "Face for member attributes." ebrowse-member-class ((t :foreground "purple")) "Face used to display the class title in member buffers." ebrowse-progress ((((min-colors 88)) :background "blue1") (t :background "blue")) "Face for progress indicator."] 8)
#@108 Return true if PREDICATE is true of some element of VECTOR.
If so, return the value returned by PREDICATE.
(defalias 'ebrowse-some #[(predicate vector) "G\305\306\nW\203	\204\f\nH!\nT\211\202	+\207" [vector result i length predicate 0 nil] 4 (#$ . 4044)])
#@62 Return true if PREDICATE is true of every element of VECTOR.
(defalias 'ebrowse-every #[(predicate vector) "G\305\306\nW\203	\203\f\nH!\nT\211\202	+\207" [vector result i length predicate 0 t] 4 (#$ . 4320)])
#@104 Return the position of ITEM in LIST or nil if not found.
Compare items with `eq' or TEST if specified.
(defalias 'ebrowse-position #[(item list &optional test) "\305\306\n\203!\2039\n\f@\"\203	\306A	T\202\2039\f@=\2030	\306A	T\202!*\207" [found i test list item 0 nil] 3 (#$ . 4550)])
#@108 Remove elements not satisfying PREDICATE from LIST and return the result.
This is a destructive operation.
(defalias 'ebrowse-delete-if-not #[(predicate list) "\305	\203!	A	@!\203	\244	\211\305\241\210)\n)\202)\207" [result list next predicate #1=#:v nil] 3 (#$ . 4868)])
#@77 Eval BODY with a writable current buffer.
Preserve buffer's modified state.
(defalias 'ebrowse-output '(macro . #[(&rest body) "\302\303!\304\305\306BD\307\310	B\311DEE)\207" [modified body make-symbol "--ebrowse-output--" let buffer-read-only ((buffer-modified-p)) unwind-protect progn set-buffer-modified-p] 6 (#$ . 5159)]))
(byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put ebrowse-output lisp-indent-function 0 edebug-form-spec t] 4)
#@53 Eval BODY with `completion-ignore-case' bound to t.
(defalias 'ebrowse-ignoring-completion-case '(macro . #[(&rest body) "\301\302BB\207" [body let ((completion-ignore-case t))] 3 (#$ . 5617)]))
(byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put ebrowse-ignoring-completion-case lisp-indent-function 0 edebug-form-spec t] 4)
#@57 Eval BODY with `selective-display' restored at the end.
(defalias 'ebrowse-save-selective '(macro . #[(&rest body) "\301\302BB\207" [body let ((selective-display selective-display))] 3 (#$ . 5959)]))
(byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put ebrowse-save-selective lisp-indent-function 0 edebug-form-spec t] 4)
#@35 For all trees in SPEC, eval BODY.
(defalias 'ebrowse-for-all-trees '(macro . #[(spec &rest body) "\306\307!@\211A@)\310\311\f\312\313\314\315\n\316\317\320\f\321BB\322\323\324D
BB\257+\207" [spec x array spec-var var body make-symbol "var" cl-loop for being the symbols of as = get ('ebrowse-root) do when vectorp] 17 (#$ . 6296)]))
(byte-code "\300\301\302\303#\210\300\301\304\305#\207" [put ebrowse-for-all-trees lisp-indent-function 1 edebug-form-spec ((sexp form) body)] 4)
#@41 Set face of a region START END to FACE.
(defalias 'ebrowse-set-face #[(start end face) "\303\304	\"\302\n#\207" [start end face overlay-put make-overlay] 4 (#$ . 6790)])
(put 'ebrowse-set-face 'byte-optimizer 'byte-compile-inline-expand)
#@469 Read a string in the minibuffer, with completion.
Case is ignored in completions.

PROMPT is a string to prompt with; normally it ends in a colon and a space.
TABLE is an alist whose elements' cars are strings, or an obarray.
TABLE can also be a function to do the completion itself.
If INITIAL-INPUT is non-nil, insert it in the minibuffer initially.
If it is (STRING . POSITION), the initial input
is STRING, but point is placed POSITION characters into the string.
(defalias 'ebrowse-completing-read-value #[(prompt table initial-input) "\304\305	\n\306\304%)\207" [completion-ignore-case prompt table initial-input t completing-read nil] 6 (#$ . 7036)])
#@100 Rename current buffer to NEW-NAME.
If a buffer with name NEW-NAME already exists, delete it first.
(defalias 'ebrowse-rename-buffer #[(new-name) "\302!\211p=?\205	\203\212\303	!\210)\304!)\207" [new-name old-buffer get-buffer kill-buffer rename-buffer] 3 (#$ . 7703)])
#@110 Return a copy of STRING with leading white space removed.
Replace sequences of newlines with a single space.
(defalias 'ebrowse-trim-string #[(string) "\301\302\"\203
\303\225\304O\301\305\"\203\306\307\304\310$\202
\207" [string string-match "^[ 	\n
]+" 0 nil "[\n]+" replace-match " " t] 5 (#$ . 7986)])
#@164 Return the width of the display area for the current buffer.
If buffer is displayed in a window, use that window's width,
otherwise use the current frame's width.
(defalias 'ebrowse-width-of-drawable-area #[nil "\301p!\211\203\302!\202\303 )\207" [window get-buffer-window window-width frame-width] 3 (#$ . 8310)])
(byte-code "\301\302\303\304#\210\301\305\306\307#\210\310\301\305\311\312\313!!#\210)\301\207" [file put ebrowse-hs structure-documentation "Header structure found at the head of BROWSE files." ebrowse-hs-version compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-hs-version (or (and (memq (aref cl-x 0) cl-struct-ebrowse-hs-tags)) (error "%s accessing a non-%s" 'ebrowse-hs-version 'ebrowse-hs)) (aref cl-x 1)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-hs-version #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-hs-tags 0 error "%s accessing a non-%s" ebrowse-hs-version ebrowse-hs 1] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-hs-command-line-options compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-hs-command-line-options (or (and (memq (aref cl-x 0) cl-struct-ebrowse-hs-tags)) (error "%s accessing a non-%s" 'ebrowse-hs-command-line-options 'ebrowse-hs)) (aref cl-x 2)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-hs-command-line-options #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-hs-tags 0 error "%s accessing a non-%s" ebrowse-hs-command-line-options ebrowse-hs 2] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-hs-unused compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-hs-unused (or (and (memq (aref cl-x 0) cl-struct-ebrowse-hs-tags)) (error "%s accessing a non-%s" 'ebrowse-hs-unused 'ebrowse-hs)) (aref cl-x 3)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-hs-unused #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-hs-tags 0 error "%s accessing a non-%s" ebrowse-hs-unused ebrowse-hs 3] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-hs-member-table compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-hs-member-table (or (and (memq (aref cl-x 0) cl-struct-ebrowse-hs-tags)) (error "%s accessing a non-%s" 'ebrowse-hs-member-table 'ebrowse-hs)) (aref cl-x 4)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-hs-member-table #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-hs-tags 0 error "%s accessing a non-%s" ebrowse-hs-member-table ebrowse-hs 4] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-hs-p compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-hs-p (and (vectorp cl-x) (>= (length cl-x) 5) (memq (aref cl-x 0) cl-struct-ebrowse-hs-tags) t)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-hs-p #[(cl-x) "\302!\205G\303Y\205\304H	>\205\305\207" [cl-x cl-struct-ebrowse-hs-tags vectorp 5 0 t] 2])
(defalias 'copy-ebrowse-hs #[(x) "\301!\207" [x copy-sequence] 2])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put make-ebrowse-hs compiler-macro #[(cl-whole &rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@
\203D
@\312>\203-
AA\211\202\313>A@\203;\314\211\202\315\316
@\"\210\202)\317\320\321\314\314	\n\f&	,\207" [#1# version command-line-options unused member-table #:--cl-keys-- :version :command-line-options :unused :member-table (:version :command-line-options :unused :member-table :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:version :command-line-options :unused :member-table)" cl--defsubst-expand (version command-line-options unused member-table) (cl-block make-ebrowse-hs (vector 'ebrowse-hs version command-line-options unused member-table)) cl-whole] 11 "\n\n(fn CL-WHOLE &cl-quote &key VERSION COMMAND-LINE-OPTIONS UNUSED MEMBER-TABLE)"] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
#@62 

(fn &key VERSION COMMAND-LINE-OPTIONS UNUSED MEMBER-TABLE)
(defalias 'make-ebrowse-hs #[(&rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@
\203D
@\312>\203-
AA\211\202\313>A@\203;\314\211\202\315\316
@\"\210\202)\317\320	\n\f%,\207" [#1# version command-line-options unused member-table #2=#:--cl-keys-- :version :command-line-options :unused :member-table (:version :command-line-options :unused :member-table :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:version :command-line-options :unused :member-table)" vector ebrowse-hs] 7 (#$ . 13248)])
(byte-code "\302C\303\302\304\305#\210\303\302\306\307#\210\303\302\310\311#\210\303\302\312\311#\210\303\313\314\315#\210\303\316\314\315#\210\303\317\314\320#\210\303\321\314\315#\210\303\322\314\315#\210\303\323\314\315#\210\303\324\314\315#\210\303\325\326\327#\210\303\330\331\332#\210\333\303\330\334\335\336	!!#\210)\311\207" [cl-struct-ebrowse-hs-tags file ebrowse-hs put cl-struct-slots ((cl-tag-slot) (version) (command-line-options) (unused) (member-table)) cl-struct-type (vector t) cl-struct-include nil cl-struct-print make-ebrowse-hs side-effect-free t copy-ebrowse-hs ebrowse-hs-p error-free ebrowse-hs-member-table ebrowse-hs-unused ebrowse-hs-command-line-options ebrowse-hs-version ebrowse-ts structure-documentation "Tree structure.\nFollowing the header structure, a BROWSE file contains a number\nof `ebrowse-ts' structures, each one describing one root class of\nthe class hierarchy with all its subclasses." ebrowse-ts-class compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-class (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags)) (error "%s accessing a non-%s" 'ebrowse-ts-class 'ebrowse-ts)) (aref cl-x 1)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-class #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ts-tags 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ts-subclasses compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-subclasses (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags)) (error "%s accessing a non-%s" 'ebrowse-ts-subclasses 'ebrowse-ts)) (aref cl-x 2)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-subclasses #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ts-tags 0 error "%s accessing a non-%s" ebrowse-ts-subclasses ebrowse-ts 2] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ts-member-variables compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-member-variables (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags)) (error "%s accessing a non-%s" 'ebrowse-ts-member-variables 'ebrowse-ts)) (aref cl-x 3)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-member-variables #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ts-tags 0 error "%s accessing a non-%s" ebrowse-ts-member-variables ebrowse-ts 3] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ts-member-functions compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-member-functions (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags)) (error "%s accessing a non-%s" 'ebrowse-ts-member-functions 'ebrowse-ts)) (aref cl-x 4)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-member-functions #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ts-tags 0 error "%s accessing a non-%s" ebrowse-ts-member-functions ebrowse-ts 4] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ts-static-variables compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-static-variables (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags)) (error "%s accessing a non-%s" 'ebrowse-ts-static-variables 'ebrowse-ts)) (aref cl-x 5)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-static-variables #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ts-tags 0 error "%s accessing a non-%s" ebrowse-ts-static-variables ebrowse-ts 5] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ts-static-functions compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-static-functions (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags)) (error "%s accessing a non-%s" 'ebrowse-ts-static-functions 'ebrowse-ts)) (aref cl-x 6)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-static-functions #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ts-tags 0 error "%s accessing a non-%s" ebrowse-ts-static-functions ebrowse-ts 6] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ts-friends compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-friends (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags)) (error "%s accessing a non-%s" 'ebrowse-ts-friends 'ebrowse-ts)) (aref cl-x 7)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-friends #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ts-tags 0 error "%s accessing a non-%s" ebrowse-ts-friends ebrowse-ts 7] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ts-types compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-types (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags)) (error "%s accessing a non-%s" 'ebrowse-ts-types 'ebrowse-ts)) (aref cl-x 8)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-types #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ts-tags 0 error "%s accessing a non-%s" ebrowse-ts-types ebrowse-ts 8] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ts-base-classes compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-base-classes (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags)) (error "%s accessing a non-%s" 'ebrowse-ts-base-classes 'ebrowse-ts)) (aref cl-x 9)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-base-classes #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ts-tags 0 error "%s accessing a non-%s" ebrowse-ts-base-classes ebrowse-ts 9] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ts-mark compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-mark (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags)) (error "%s accessing a non-%s" 'ebrowse-ts-mark 'ebrowse-ts)) (aref cl-x 10)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-mark #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ts-tags 0 error "%s accessing a non-%s" ebrowse-ts-mark ebrowse-ts 10] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ts-p compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ts-p (and (vectorp cl-x) (>= (length cl-x) 11) (memq (aref cl-x 0) cl-struct-ebrowse-ts-tags) t)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ts-p #[(cl-x) "\302!\205G\303Y\205\304H	>\205\305\207" [cl-x cl-struct-ebrowse-ts-tags vectorp 11 0 t] 2])
(defalias 'copy-ebrowse-ts #[(x) "\301!\207" [x copy-sequence] 2])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put make-ebrowse-ts compiler-macro #[(cl-whole &rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@\312>A@\313>A@\314>A@\315>A@\316>A@\317>A@\203t@\320>\203[AA\211\202F\321>A@\203j\322\211\202F\323\324@\"\210\202D)\325\326\327\322\322	\n\f
&.\n\207" [#1# class subclasses member-variables member-functions static-variables :class :subclasses :member-variables :member-functions :static-variables :static-functions :friends :types :base-classes :mark (:class :subclasses :member-variables :member-functions :static-variables :static-functions :friends :types :base-classes :mark :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:class :subclasses :member-variables :member-functions :static-variables :static-functions :friends :types :base-classes :mark)" cl--defsubst-expand (class subclasses member-variables member-functions static-variables static-functions friends types base-classes mark) (cl-block make-ebrowse-ts (vector 'ebrowse-ts class subclasses member-variables member-functions static-variables static-functions friends types base-classes mark)) static-functions friends types base-classes mark #:--cl-keys-- cl-whole] 17 "\n\n(fn CL-WHOLE &cl-quote &key CLASS SUBCLASSES MEMBER-VARIABLES MEMBER-FUNCTIONS STATIC-VARIABLES STATIC-FUNCTIONS FRIENDS TYPES BASE-CLASSES MARK)"] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
#@130 

(fn &key CLASS SUBCLASSES MEMBER-VARIABLES MEMBER-FUNCTIONS STATIC-VARIABLES STATIC-FUNCTIONS FRIENDS TYPES BASE-CLASSES MARK)
(defalias 'make-ebrowse-ts #[(&rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@\312>A@\313>A@\314>A@\315>A@\316>A@\317>A@\203t@\320>\203[AA\211\202F\321>A@\203j\322\211\202F\323\324@\"\210\202D)\325\326	\n\f
&.\n\207" [#1# class subclasses member-variables member-functions static-variables :class :subclasses :member-variables :member-functions :static-variables :static-functions :friends :types :base-classes :mark (:class :subclasses :member-variables :member-functions :static-variables :static-functions :friends :types :base-classes :mark :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:class :subclasses :member-variables :member-functions :static-variables :static-functions :friends :types :base-classes :mark)" vector ebrowse-ts static-functions friends types base-classes mark #2=#:--cl-keys--] 13 (#$ . 24031)])
(byte-code "\302C\303\302\304\305#\210\303\302\306\307#\210\303\302\310\311#\210\303\302\312\311#\210\303\313\314\315#\210\303\316\314\315#\210\303\317\314\320#\210\303\321\314\315#\210\303\322\314\315#\210\303\323\314\315#\210\303\324\314\315#\210\303\325\314\315#\210\303\326\314\315#\210\303\327\314\315#\210\303\330\314\315#\210\303\331\314\315#\210\303\332\314\315#\210\303\333\334\335#\210\303\336\337\340#\210\341\303\336\342\343\344	!!#\210)\311\207" [cl-struct-ebrowse-ts-tags file ebrowse-ts put cl-struct-slots ((cl-tag-slot) (class) (subclasses) (member-variables) (member-functions) (static-variables) (static-functions) (friends) (types) (base-classes) (mark)) cl-struct-type (vector t) cl-struct-include nil cl-struct-print make-ebrowse-ts side-effect-free t copy-ebrowse-ts ebrowse-ts-p error-free ebrowse-ts-mark ebrowse-ts-base-classes ebrowse-ts-types ebrowse-ts-friends ebrowse-ts-static-functions ebrowse-ts-static-variables ebrowse-ts-member-functions ebrowse-ts-member-variables ebrowse-ts-subclasses ebrowse-ts-class ebrowse-bs structure-documentation "Common sub-structure.\nA common structure defining an occurrence of some name in the\nsource files." ebrowse-bs-name compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-bs-name (or (and (memq (aref cl-x 0) cl-struct-ebrowse-bs-tags)) (error "%s accessing a non-%s" 'ebrowse-bs-name 'ebrowse-bs)) (aref cl-x 1)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-bs-name #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-bs-tags 0 error "%s accessing a non-%s" ebrowse-bs-name ebrowse-bs 1] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-bs-scope compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-bs-scope (or (and (memq (aref cl-x 0) cl-struct-ebrowse-bs-tags)) (error "%s accessing a non-%s" 'ebrowse-bs-scope 'ebrowse-bs)) (aref cl-x 2)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-bs-scope #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-bs-tags 0 error "%s accessing a non-%s" ebrowse-bs-scope ebrowse-bs 2] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-bs-flags compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-bs-flags (or (and (memq (aref cl-x 0) cl-struct-ebrowse-bs-tags)) (error "%s accessing a non-%s" 'ebrowse-bs-flags 'ebrowse-bs)) (aref cl-x 3)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-bs-flags #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-bs-tags 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-bs-file compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-bs-file (or (and (memq (aref cl-x 0) cl-struct-ebrowse-bs-tags)) (error "%s accessing a non-%s" 'ebrowse-bs-file 'ebrowse-bs)) (aref cl-x 4)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-bs-file #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-bs-tags 0 error "%s accessing a non-%s" ebrowse-bs-file ebrowse-bs 4] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-bs-pattern compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-bs-pattern (or (and (memq (aref cl-x 0) cl-struct-ebrowse-bs-tags)) (error "%s accessing a non-%s" 'ebrowse-bs-pattern 'ebrowse-bs)) (aref cl-x 5)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-bs-pattern #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-bs-tags 0 error "%s accessing a non-%s" ebrowse-bs-pattern ebrowse-bs 5] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-bs-point compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-bs-point (or (and (memq (aref cl-x 0) cl-struct-ebrowse-bs-tags)) (error "%s accessing a non-%s" 'ebrowse-bs-point 'ebrowse-bs)) (aref cl-x 6)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-bs-point #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-bs-tags 0 error "%s accessing a non-%s" ebrowse-bs-point ebrowse-bs 6] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-bs-p compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-bs-p (and (vectorp cl-x) (>= (length cl-x) 7) (memq (aref cl-x 0) cl-struct-ebrowse-bs-tags) t)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-bs-p #[(cl-x) "\302!\205G\303Y\205\304H	>\205\305\207" [cl-x cl-struct-ebrowse-bs-tags vectorp 7 0 t] 2])
(defalias 'copy-ebrowse-bs #[(x) "\301!\207" [x copy-sequence] 2])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put make-ebrowse-bs compiler-macro #[(cl-whole &rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@\312>A@\313>A@\203X@\314>\203?AA\211\202*\315>A@\203N\316\211\202*\317\320@\"\210\202()\321\322\323\316\316	\n\f
&.\207" [#1# name scope flags file pattern :name :scope :flags :file :pattern :point (:name :scope :flags :file :pattern :point :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:name :scope :flags :file :pattern :point)" cl--defsubst-expand (name scope flags file pattern point) (cl-block make-ebrowse-bs (vector 'ebrowse-bs name scope flags file pattern point)) point #:--cl-keys-- cl-whole] 13 "\n\n(fn CL-WHOLE &cl-quote &key NAME SCOPE FLAGS FILE PATTERN POINT)"] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
#@49 

(fn &key NAME SCOPE FLAGS FILE PATTERN POINT)
(defalias 'make-ebrowse-bs #[(&rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@\312>A@\313>A@\203X@\314>\203?AA\211\202*\315>A@\203N\316\211\202*\317\320@\"\210\202()\321\322	\n\f
&.\207" [#1# name scope flags file pattern :name :scope :flags :file :pattern :point (:name :scope :flags :file :pattern :point :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:name :scope :flags :file :pattern :point)" vector ebrowse-bs point #2=#:--cl-keys--] 9 (#$ . 31861)])
(byte-code "\302C\303\302\304\305#\210\303\302\306\307#\210\303\302\310\311#\210\303\302\312\311#\210\303\313\314\315#\210\303\316\314\315#\210\303\317\314\320#\210\303\321\314\315#\210\303\322\314\315#\210\303\323\314\315#\210\303\324\314\315#\210\303\325\314\315#\210\303\326\314\315#\210\303\327\330\331#\210\332\327\"\203c\210\202g\327B\303\333\334\335#\210\336\303\333\337\340\341	!!#\210)\311\207" [cl-struct-ebrowse-bs-tags file ebrowse-bs put cl-struct-slots ((cl-tag-slot) (name) (scope) (flags) (file) (pattern) (point)) cl-struct-type (vector t) cl-struct-include nil cl-struct-print make-ebrowse-bs side-effect-free t copy-ebrowse-bs ebrowse-bs-p error-free ebrowse-bs-point ebrowse-bs-pattern ebrowse-bs-file ebrowse-bs-flags ebrowse-bs-scope ebrowse-bs-name ebrowse-cs structure-documentation "Class structure.\nThis is the structure stored in the CLASS slot of a `ebrowse-ts'\nstructure.  It describes the location of the class declaration." memql ebrowse-cs-name compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-cs-name (or (and (memq (aref cl-x 0) cl-struct-ebrowse-cs-tags)) (error "%s accessing a non-%s" 'ebrowse-cs-name 'ebrowse-cs)) (aref cl-x 1)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-cs-name #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-cs-tags 0 error "%s accessing a non-%s" ebrowse-cs-name ebrowse-cs 1] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-cs-scope compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-cs-scope (or (and (memq (aref cl-x 0) cl-struct-ebrowse-cs-tags)) (error "%s accessing a non-%s" 'ebrowse-cs-scope 'ebrowse-cs)) (aref cl-x 2)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-cs-scope #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-cs-tags 0 error "%s accessing a non-%s" ebrowse-cs-scope ebrowse-cs 2] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-cs-flags compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-cs-flags (or (and (memq (aref cl-x 0) cl-struct-ebrowse-cs-tags)) (error "%s accessing a non-%s" 'ebrowse-cs-flags 'ebrowse-cs)) (aref cl-x 3)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-cs-flags #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-cs-tags 0 error "%s accessing a non-%s" ebrowse-cs-flags ebrowse-cs 3] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-cs-file compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-cs-file (or (and (memq (aref cl-x 0) cl-struct-ebrowse-cs-tags)) (error "%s accessing a non-%s" 'ebrowse-cs-file 'ebrowse-cs)) (aref cl-x 4)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-cs-file #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-cs-tags 0 error "%s accessing a non-%s" ebrowse-cs-file ebrowse-cs 4] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-cs-pattern compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-cs-pattern (or (and (memq (aref cl-x 0) cl-struct-ebrowse-cs-tags)) (error "%s accessing a non-%s" 'ebrowse-cs-pattern 'ebrowse-cs)) (aref cl-x 5)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-cs-pattern #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-cs-tags 0 error "%s accessing a non-%s" ebrowse-cs-pattern ebrowse-cs 5] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-cs-point compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-cs-point (or (and (memq (aref cl-x 0) cl-struct-ebrowse-cs-tags)) (error "%s accessing a non-%s" 'ebrowse-cs-point 'ebrowse-cs)) (aref cl-x 6)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-cs-point #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-cs-tags 0 error "%s accessing a non-%s" ebrowse-cs-point ebrowse-cs 6] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-cs-source-file compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-cs-source-file (or (and (memq (aref cl-x 0) cl-struct-ebrowse-cs-tags)) (error "%s accessing a non-%s" 'ebrowse-cs-source-file 'ebrowse-cs)) (aref cl-x 7)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-cs-source-file #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-cs-tags 0 error "%s accessing a non-%s" ebrowse-cs-source-file ebrowse-cs 7] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-cs-p compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-cs-p (and (vectorp cl-x) (>= (length cl-x) 8) (memq (aref cl-x 0) cl-struct-ebrowse-cs-tags) t)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-cs-p #[(cl-x) "\302!\205G\303Y\205\304H	>\205\305\207" [cl-x cl-struct-ebrowse-cs-tags vectorp 8 0 t] 2])
(defalias 'copy-ebrowse-cs #[(x) "\301!\207" [x copy-sequence] 2])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put make-ebrowse-cs compiler-macro #[(cl-whole &rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@\312>A@\313>A@\314>A@\203_@\315>\203FAA\211\2021\316>A@\203U\317\211\2021\320\321@\"\210\202/)\322\323\324\317\317	\n\f
&\f.\207" [#1# name scope flags file pattern :name :scope :flags :file :pattern :point :source-file (:name :scope :flags :file :pattern :point :source-file :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:name :scope :flags :file :pattern :point :source-file)" cl--defsubst-expand (name scope flags file pattern point source-file) (cl-block make-ebrowse-cs (vector 'ebrowse-cs name scope flags file pattern point source-file)) point source-file #:--cl-keys-- cl-whole] 14 "\n\n(fn CL-WHOLE &cl-quote &key NAME SCOPE FLAGS FILE PATTERN POINT SOURCE-FILE)"] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
#@61 

(fn &key NAME SCOPE FLAGS FILE PATTERN POINT SOURCE-FILE)
(defalias 'make-ebrowse-cs #[(&rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@\312>A@\313>A@\314>A@\203_@\315>\203FAA\211\2021\316>A@\203U\317\211\2021\320\321@\"\210\202/)\322\323	\n\f
&.\207" [#1# name scope flags file pattern :name :scope :flags :file :pattern :point :source-file (:name :scope :flags :file :pattern :point :source-file :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:name :scope :flags :file :pattern :point :source-file)" vector ebrowse-cs point source-file #2=#:--cl-keys--] 10 (#$ . 39825)])
(byte-code "\303C\304\303\305\306#\210\304\303\307\310#\210\304\303\311\312#\210\304\303\313\314#\210\304\315\316\317#\210\304\320\316\317#\210\304\321\316\322#\210\304\323\316\317#\210\304\324\316\317#\210\304\325\316\317#\210\304\326\316\317#\210\304\327\316\317#\210\304\330\316\317#\210\304\331\316\317#\210\304\332\333\334#\210\335\332	\"\203i	\210\202m\332	B\304\336\337\340#\210\341\304\336\342\343\344\n!!#\210)\314\207" [cl-struct-ebrowse-cs-tags cl-struct-ebrowse-bs-tags file ebrowse-cs put cl-struct-slots ((cl-tag-slot) (name) (scope) (flags) (file) (pattern) (point) (source-file)) cl-struct-type (vector t) cl-struct-include ebrowse-bs cl-struct-print nil make-ebrowse-cs side-effect-free t copy-ebrowse-cs ebrowse-cs-p error-free ebrowse-cs-source-file ebrowse-cs-point ebrowse-cs-pattern ebrowse-cs-file ebrowse-cs-flags ebrowse-cs-scope ebrowse-cs-name ebrowse-ms structure-documentation "Member structure.\nThis is the structure describing a single member.  The `ebrowse-ts'\nstructure contains various lists for the different types of\nmembers." memql ebrowse-ms-name compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-name (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags)) (error "%s accessing a non-%s" 'ebrowse-ms-name 'ebrowse-ms)) (aref cl-x 1)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-name #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-ms-name ebrowse-ms 1] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ms-scope compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-scope (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags)) (error "%s accessing a non-%s" 'ebrowse-ms-scope 'ebrowse-ms)) (aref cl-x 2)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-scope #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-ms-scope ebrowse-ms 2] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ms-flags compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-flags (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags)) (error "%s accessing a non-%s" 'ebrowse-ms-flags 'ebrowse-ms)) (aref cl-x 3)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-flags #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-ms-flags ebrowse-ms 3] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ms-file compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-file (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags)) (error "%s accessing a non-%s" 'ebrowse-ms-file 'ebrowse-ms)) (aref cl-x 4)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-file #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-ms-file ebrowse-ms 4] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ms-pattern compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-pattern (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags)) (error "%s accessing a non-%s" 'ebrowse-ms-pattern 'ebrowse-ms)) (aref cl-x 5)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-pattern #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-ms-pattern ebrowse-ms 5] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ms-point compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-point (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags)) (error "%s accessing a non-%s" 'ebrowse-ms-point 'ebrowse-ms)) (aref cl-x 6)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-point #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-ms-point ebrowse-ms 6] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ms-visibility compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-visibility (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags)) (error "%s accessing a non-%s" 'ebrowse-ms-visibility 'ebrowse-ms)) (aref cl-x 7)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-visibility #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-ms-visibility ebrowse-ms 7] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ms-definition-file compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-definition-file (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags)) (error "%s accessing a non-%s" 'ebrowse-ms-definition-file 'ebrowse-ms)) (aref cl-x 8)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-definition-file #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-ms-definition-file ebrowse-ms 8] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ms-definition-pattern compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-definition-pattern (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags)) (error "%s accessing a non-%s" 'ebrowse-ms-definition-pattern 'ebrowse-ms)) (aref cl-x 9)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-definition-pattern #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-ms-definition-pattern ebrowse-ms 9] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ms-definition-point compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-definition-point (or (and (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags)) (error "%s accessing a non-%s" 'ebrowse-ms-definition-point 'ebrowse-ms)) (aref cl-x 10)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-definition-point #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-ms-definition-point ebrowse-ms 10] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-ms-p compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-ms-p (and (vectorp cl-x) (>= (length cl-x) 11) (memq (aref cl-x 0) cl-struct-ebrowse-ms-tags) t)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-ms-p #[(cl-x) "\302!\205G\303Y\205\304H	>\205\305\207" [cl-x cl-struct-ebrowse-ms-tags vectorp 11 0 t] 2])
(defalias 'copy-ebrowse-ms #[(x) "\301!\207" [x copy-sequence] 2])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put make-ebrowse-ms compiler-macro #[(cl-whole &rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@\312>A@\313>A@\314>A@\315>A@\316>A@\317>A@\203t@\320>\203[AA\211\202F\321>A@\203j\322\211\202F\323\324@\"\210\202D)\325\326\327\322\322	\n\f
&.\n\207" [#1# name scope flags file pattern :name :scope :flags :file :pattern :point :visibility :definition-file :definition-pattern :definition-point (:name :scope :flags :file :pattern :point :visibility :definition-file :definition-pattern :definition-point :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:name :scope :flags :file :pattern :point :visibility :definition-file :definition-pattern :definition-point)" cl--defsubst-expand (name scope flags file pattern point visibility definition-file definition-pattern definition-point) (cl-block make-ebrowse-ms (vector 'ebrowse-ms name scope flags file pattern point visibility definition-file definition-pattern definition-point)) point visibility definition-file definition-pattern definition-point #:--cl-keys-- cl-whole] 17 "\n\n(fn CL-WHOLE &cl-quote &key NAME SCOPE FLAGS FILE PATTERN POINT VISIBILITY DEFINITION-FILE DEFINITION-PATTERN DEFINITION-POINT)"] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
#@112 

(fn &key NAME SCOPE FLAGS FILE PATTERN POINT VISIBILITY DEFINITION-FILE DEFINITION-PATTERN DEFINITION-POINT)
(defalias 'make-ebrowse-ms #[(&rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@\312>A@\313>A@\314>A@\315>A@\316>A@\317>A@\203t@\320>\203[AA\211\202F\321>A@\203j\322\211\202F\323\324@\"\210\202D)\325\326	\n\f
&.\n\207" [#1# name scope flags file pattern :name :scope :flags :file :pattern :point :visibility :definition-file :definition-pattern :definition-point (:name :scope :flags :file :pattern :point :visibility :definition-file :definition-pattern :definition-point :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:name :scope :flags :file :pattern :point :visibility :definition-file :definition-pattern :definition-point)" vector ebrowse-ms point visibility definition-file definition-pattern definition-point #2=#:--cl-keys--] 13 (#$ . 50583)])
(byte-code "\301C\302\301\303\304#\210\302\301\305\306#\210\302\301\307\310#\210\302\301\311\312#\210\302\313\314\315#\210\302\316\314\315#\210\302\317\314\320#\210\302\321\314\315#\210\302\322\314\315#\210\302\323\314\315#\210\302\324\314\315#\210\302\325\314\315#\210\302\326\314\315#\210\302\327\314\315#\210\302\330\314\315#\210\302\331\314\315#\210\302\332\314\315#\207" [cl-struct-ebrowse-ms-tags ebrowse-ms put cl-struct-slots ((cl-tag-slot) (name) (scope) (flags) (file) (pattern) (point) (visibility) (definition-file) (definition-pattern) (definition-point)) cl-struct-type (vector t) cl-struct-include ebrowse-bs cl-struct-print nil make-ebrowse-ms side-effect-free t copy-ebrowse-ms ebrowse-ms-p error-free ebrowse-ms-definition-point ebrowse-ms-definition-pattern ebrowse-ms-definition-file ebrowse-ms-visibility ebrowse-ms-point ebrowse-ms-pattern ebrowse-ms-file ebrowse-ms-flags ebrowse-ms-scope ebrowse-ms-name] 4)
#@46 Value is non-nil if MEMBER's bit BIT is set.
(defalias 'ebrowse-member-bit-set-p #[(member bit) "\303\304H	>\204\305\306\307\310#\210\311H\n\"\304U?\207" [member cl-struct-ebrowse-bs-tags bit logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 52482)])
(put 'ebrowse-member-bit-set-p 'byte-optimizer 'byte-compile-inline-expand)
#@40 Value is non-nil if MEMBER is virtual.
(defalias 'ebrowse-virtual-p #[(member) "\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U*?\207" [member bit cl-struct-ebrowse-bs-tags 1 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 52847)])
(put 'ebrowse-virtual-p 'byte-optimizer 'byte-compile-inline-expand)
#@39 Value is non-nil if MEMBER is inline.
(defalias 'ebrowse-inline-p #[(member) "\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U*?\207" [member bit cl-struct-ebrowse-bs-tags 2 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 53198)])
(put 'ebrowse-inline-p 'byte-optimizer 'byte-compile-inline-expand)
#@38 Value is non-nil if MEMBER is const.
(defalias 'ebrowse-const-p #[(member) "\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U*?\207" [member bit cl-struct-ebrowse-bs-tags 4 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 53546)])
(put 'ebrowse-const-p 'byte-optimizer 'byte-compile-inline-expand)
#@56 Value is non-nil if MEMBER is a pure virtual function.
(defalias 'ebrowse-pure-virtual-p #[(member) "\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U*?\207" [member bit cl-struct-ebrowse-bs-tags 8 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 53891)])
(put 'ebrowse-pure-virtual-p 'byte-optimizer 'byte-compile-inline-expand)
#@40 Value is non-nil if MEMBER is mutable.
(defalias 'ebrowse-mutable-p #[(member) "\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U*?\207" [member bit cl-struct-ebrowse-bs-tags 16 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 54268)])
(put 'ebrowse-mutable-p 'byte-optimizer 'byte-compile-inline-expand)
#@43 Value is non-nil if MEMBER is a template.
(defalias 'ebrowse-template-p #[(member) "\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U*?\207" [member bit cl-struct-ebrowse-bs-tags 32 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 54620)])
(put 'ebrowse-template-p 'byte-optimizer 'byte-compile-inline-expand)
#@41 Value is non-nil if MEMBER is explicit.
(defalias 'ebrowse-explicit-p #[(member) "\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U*?\207" [member bit cl-struct-ebrowse-bs-tags 64 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 54977)])
(put 'ebrowse-explicit-p 'byte-optimizer 'byte-compile-inline-expand)
#@55 Value is non-nil if MEMBER has a throw specification.
(defalias 'ebrowse-throw-list-p #[(member) "\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U*?\207" [member bit cl-struct-ebrowse-bs-tags 128 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 55332)])
(put 'ebrowse-throw-list-p 'byte-optimizer 'byte-compile-inline-expand)
#@45 Value is non-nil if MEMBER.is `extern "C"'.
(defalias 'ebrowse-extern-c-p #[(member) "\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U*?\207" [member bit cl-struct-ebrowse-bs-tags 256 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 55706)])
(put 'ebrowse-extern-c-p 'byte-optimizer 'byte-compile-inline-expand)
#@41 Value is non-nil if MEMBER is a define.
(defalias 'ebrowse-define-p #[(member) "\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U*?\207" [member bit cl-struct-ebrowse-bs-tags 512 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3] 5 (#$ . 56066)])
(put 'ebrowse-define-p 'byte-optimizer 'byte-compile-inline-expand)
#@42 Version string expected in BROWSE files.
(defconst ebrowse-version-string "ebrowse 5.0" (#$ . 56418))
#@110 The name used for the surrogate class.containing global entities.
This must be the same that `ebrowse' uses.
(defconst ebrowse-globals-name "*Globals*" (#$ . 56527))
#@128 Last regular expression searched for in tree and member buffers.
Each tree and member buffer maintains its own search history.
(defvar ebrowse--last-regexp nil (#$ . 56700))
(make-variable-buffer-local 'ebrowse--last-regexp)
#@180 List of accessors for member lists.
Each element is the symbol of an accessor function.
The nth element must be the accessor for the nth member list
in an `ebrowse-ts' structure.
(defconst ebrowse-member-list-accessors '(ebrowse-ts-member-variables ebrowse-ts-member-functions ebrowse-ts-static-variables ebrowse-ts-static-functions ebrowse-ts-friends ebrowse-ts-types) (#$ . 56932))
#@95 Obarray holding all `ebrowse-ts' structures of a class tree.
Buffer-local in Ebrowse buffers.
(defvar ebrowse--tree-obarray nil (#$ . 57322))
#@74 File from which BROWSE file was loaded.
Buffer-local in Ebrowse buffers.
(defvar ebrowse--tags-file-name nil (#$ . 57470))
#@89 Header structure of type `ebrowse-hs' of a class tree.
Buffer-local in Ebrowse buffers.
(defvar ebrowse--header nil (#$ . 57599))
#@83 Non-nil means an Ebrowse buffer won't be reused.
Buffer-local in Ebrowse buffers.
(defvar ebrowse--frozen-flag nil (#$ . 57735))
#@87 Non-nil means show file names in a tree buffer.
Buffer-local in Ebrowse tree buffers.
(defvar ebrowse--show-file-names-flag nil (#$ . 57870))
#@90 Non-nil means show members in long display form.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--long-display-flag nil (#$ . 58018))
#@101 Number of columns to display for short member display form.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--n-columns nil (#$ . 58167))
#@102 Width of a columns to display for short member display form.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--column-width nil (#$ . 58319))
#@99 Non-nil means display virtual members in a member buffer.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--virtual-display-flag nil (#$ . 58474))
#@98 Non-nil means display inline members in a member buffer.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--inline-display-flag nil (#$ . 58634))
#@97 Non-nil means display const members in a member buffer.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--const-display-flag nil (#$ . 58792))
#@104 Non-nil means display pure virtual members in a member buffer.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--pure-display-flag nil (#$ . 58949))
#@202 Filter for display of public, protected, and private members.
This is a vector of three elements.  An element nil means the
corresponding members are not shown.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--filters nil (#$ . 59112))
#@101 Non-nil means display inherited members in a member buffer.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--show-inherited-flag nil (#$ . 59363))
#@101 Non-nil means display member attributes in a member buffer.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--attributes-flag nil (#$ . 59525))
#@98 Non-nil means display member regexps in a member buffer.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--source-regexp-flag nil (#$ . 59682))
#@103 Class displayed in a member buffer, a `ebrowse-ts' structure.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--displayed-class nil (#$ . 59840))
#@189 Member list displayed in a member buffer.
This is a symbol whose function definition is an accessor for the
member list in `ebrowse-cs' structures.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--accessor nil (#$ . 60000))
#@107 The list of `ebrowse-ms' structures displayed in a member buffer.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--member-list nil (#$ . 60239))
#@103 Column in which declarations are displayed in member buffers.
Buffer-local in Ebrowse member buffers.
(defvar ebrowse--decl-column nil (#$ . 60399))
#@106 Frame configuration saved when viewing a class/member in another frame.
Buffer-local in Ebrowse buffers.
(defvar ebrowse--frame-configuration nil (#$ . 60555))
#@111 Action to perform after viewing a class/member.
Either `kill-buffer' or nil.
Buffer-local in Ebrowse buffers.
(defvar ebrowse--view-exit-action nil (#$ . 60722))
#@46 Class tree.
Buffer-local in Ebrowse buffers.
(defvar ebrowse--tree nil (#$ . 60890))
(defvar ebrowse-temp-position-to-view nil)
(defvar ebrowse-temp-info-to-view nil)
#@39 The keymap used in tree mode buffers.
(defvar ebrowse-tree-mode-map nil (#$ . 61063))
#@55 Strings displayed in the mode line of member buffers.
(defvar ebrowse--member-mode-strings nil (#$ . 61155))
#@40 The keymap used in the member buffers.
(defvar ebrowse-member-mode-map nil (#$ . 61270))
(byte-code "\300\301\302\303#\210\300\304\302\305#\210\300\306\302\307#\210\300\310\302\311#\210\300\312\302\313#\210\300\314\302\315#\210\300\301\316\317#\210\300\304\316\320#\210\300\306\316\307#\210\300\310\316\311#\210\300\312\316\321#\210\300\314\316\315#\207" [put ebrowse-ts-member-variables ebrowse-title "Member Variables" ebrowse-ts-member-functions "Member Functions" ebrowse-ts-static-variables "Static Variables" ebrowse-ts-static-functions "Static Functions" ebrowse-ts-friends "Friends" ebrowse-ts-types "Types" ebrowse-global-title "Global Variables" "Global Functions" "Defines"] 4)
#@201 Return an obarray containing all files mentioned in the current tree.
The tree is expected in the buffer-local variable `ebrowse--tree-obarray'.
MARKED-ONLY non-nil means include marked classes only.
(defalias 'ebrowse-files-table #[(&optional marked-only) "\304\305\306\"\307\310\311\312\"\210)	*\207" [i files tree ebrowse--tree-obarray make-hash-table :test equal -1 nil mapatoms #[(#1=#:var) "\306N\307	!\205\n\n\203\"	\310H>\204\311\312\313\314#\210	\315H\205\n	\310H>\2040\311\312\316\314#\210	\317H\320
T\211\321\246!\203F\322\323\320
!\"\210\f\310H>\204U\311\312\324\325#\210\f\326H\f\310H>\204g\311\312\327\325#\210\f\330H \211!\203z\331!\211\"#\210 \203\207\331 \211\"#\210#\332$\211%\205	%@\211$	!&\332\211' \332(&:\203\376&@\211'\310H)>\204\277\311\312\333\334#\210'\330H '\310H)>\204\325\311\312\335\334#\210'\336H( \203\350\331 \211\"#\210(\203\365\331(\211\"#\210&A\211&\202\247,%A\211%\204\222\332-\207" [#1# tree marked-only cl-struct-ebrowse-ts-tags class i ebrowse-root vectorp 0 error "%s accessing a non-%s" ebrowse-ts-mark ebrowse-ts 10 ebrowse-ts-class 1 zerop 20 ebrowse-show-progress "Preparing file list" ebrowse-cs-source-file ebrowse-cs 7 ebrowse-cs-file 4 puthash nil ebrowse-ms-file ebrowse-ms ebrowse-ms-definition-file 8 cl-struct-ebrowse-cs-tags file source-file files ebrowse-member-list-accessors accessor --dolist-tail-- #2=#:--cl-var-- m def-file cl-struct-ebrowse-ms-tags] 6]] 3 (#$ . 61966)])
#@112 Return a list containing all files mentioned in a tree.
MARKED-ONLY non-nil means include marked classes only.
(defalias 'ebrowse-files-list #[(&optional marked-only) "\302\303\304\305	!\"\210)\207" [list marked-only nil maphash #[(file _dummy) "	B\211\207" [file list] 2] ebrowse-files-table] 4 (#$ . 63474)])
#@68 Value is non-nil if any class in the current class tree is marked.
(defalias 'ebrowse-marked-classes-p #[nil "\300\301\215\207" [--cl-block-ebrowse-marked-classes-p-- (byte-code "\302\303\304	\"\210)\302\207" [tree ebrowse--tree-obarray nil mapatoms #[(#1=#:var) "\303N\304	!\205\"	\305H\n>\204\306\307\310\311#\210	\312H\205\"\313\314	\"\207" [#1# tree cl-struct-ebrowse-ts-tags ebrowse-root vectorp 0 error "%s accessing a non-%s" ebrowse-ts-mark ebrowse-ts 10 throw --cl-block-ebrowse-marked-classes-p--] 4]] 3)] 2 (#$ . 63795)])
#@50 Return t if TREE is the one for global entities.
(defalias 'ebrowse-globals-tree-p #[(tree) "\304H	>\204\305\306\307\310#\210\311H\304H\n>\204\305\306\312\313#\210\304H	>\204,\305\306\307\310#\210\311H\311H\230\207" [tree cl-struct-ebrowse-ts-tags cl-struct-ebrowse-bs-tags ebrowse-globals-name 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-bs-name ebrowse-bs] 4 (#$ . 64341)])
(put 'ebrowse-globals-tree-p 'byte-optimizer 'byte-compile-inline-expand)
#@56 Return the name of CLASS with scope prepended, if any.
(defalias 'ebrowse-qualified-class-name #[(class) "\302H	>\204\303\304\305\306#\210\307H\2039\302H	>\204\"\303\304\305\306#\210\307H\310\302H	>\2044\303\304\311\306#\210\312HQ\207\302H	>\204G\303\304\311\306#\210\312H\207" [class cl-struct-ebrowse-cs-tags 0 error "%s accessing a non-%s" ebrowse-cs-scope ebrowse-cs 2 "::" ebrowse-cs-name 1] 6 (#$ . 64833)])
(put 'ebrowse-qualified-class-name 'byte-optimizer 'byte-compile-inline-expand)
#@356 Return an alist describing all classes in a tree.
Each elements in the list has the form (CLASS-NAME . TREE).
CLASS-NAME is the name of the class.  TREE is the
class tree whose root is QUALIFIED-CLASS-NAME.
QUALIFIED-NAMES-P non-nil means return qualified names as CLASS-NAME.
The class tree is found in the buffer-local variable `ebrowse--tree-obarray'.
(defalias 'ebrowse-tree-obarray-as-alist #[(&optional qualified-names-p) "\304	\203\304\305\306\"\210)\202\304\305\307\"\210))\207" [alist qualified-names-p tree ebrowse--tree-obarray nil mapatoms #[(#1=#:var) "\306N\307	!\205t	\310H\n>\204\311\312\313\314#\210	\315H\211\310H\f>\204*\311\312\316\317#\210\320H\203W\310H\f>\204>\311\312\316\317#\210\320H\321\310H\f>\204P\311\312\322\317#\210\315HQ\202h\310H\f>\204e\311\312\322\317#\210\315H)	
BB\266\203\211\207" [#1# tree cl-struct-ebrowse-ts-tags class cl-struct-ebrowse-cs-tags alist ebrowse-root vectorp 0 error #3="%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-scope ebrowse-cs 2 "::" ebrowse-cs-name] 7] #[(#2=#:var) "\305N\306	!\205F	\307H\n>\204\310\311\312\313#\210	\314H\307H>\204(\310\311\315\316#\210	\307H\n>\2046\310\311\312\313#\210	\314H\314H	\fBB\266\203\211\207" [#2# tree cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags alist ebrowse-root vectorp 0 error #3# ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-name ebrowse-cs] 5]] 3 (#$ . 65348)])
#@66 Sort a LIST of `ebrowse-ts' structures by qualified class names.
(defalias 'ebrowse-sort-tree-list #[(list) "\301\302\"\207" [list sort #[(a b) "\305H	>\204\306\307\310\311#\210\312H\211\305H>\204 \306\307\313\314#\210\n\315H\203M\n\305H>\2044\306\307\313\314#\210\n\315H\316\n\305H>\204F\306\307\317\314#\210\n\312HQ\202^\n\305H>\204[\306\307\317\314#\210\n\312H)\f\305H	>\204m\306\307\310\311#\210\f\312H\211\305H>\204\306\307\313\314#\210\n\315H\203\254\n\305H>\204\223\306\307\313\314#\210\n\315H\316\n\305H>\204\245\306\307\317\314#\210\n\312HQ\202\275\n\305H>\204\272\306\307\317\314#\210\n\312H)\231\207" [a cl-struct-ebrowse-ts-tags class cl-struct-ebrowse-cs-tags b 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-scope ebrowse-cs 2 "::" ebrowse-cs-name] 8]] 3 (#$ . 66785)])
#@218 Search for a class with name CLASS in TREE.
If CLASS is found, return the tail of TREE starting at CLASS.  This function
is used during the load phase where classes appended to a file replace older
class information.
(defalias 'ebrowse-class-in-tree #[(class tree) "\306H	>\204\307\310\311\312#\210\313H\314\f\203\343\n\204\343\f\211@\306H	>\204-\307\310\311\312#\210
@\313H\211\306H>\204A\307\310\315\316#\210\317H\203p\306H>\204V\307\310\315\316#\210\317H\320\306H>\204i\307\310\321\316#\210\313HQ\202\202\306H>\204\307\310\321\316#\210\313H)\211\306H>\204\224\307\310\315\316#\210\317H\203\303\306H>\204\251\307\310\315\316#\210\317H\320\306H>\204\274\307\310\321\316#\210\313HQ\202\325\306H>\204\322\307\310\321\316#\210\313H)\230\203\334
\fA)\202\n*\207" [class cl-struct-ebrowse-ts-tags found tclass tree root-ptr 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 nil ebrowse-cs-scope ebrowse-cs 2 "::" ebrowse-cs-name cl-struct-ebrowse-cs-tags] 8 (#$ . 67631)])
#@219 Return list of base-classes of TREE by searching subclass lists.
This function must be used instead of the struct slot
`base-classes' to access the base-class list directly because it
computes this information lazily.
(defalias 'ebrowse-base-classes #[(tree) "\306H	>\204\307\310\311\312#\210\313H\206H\306H	>\204\"\307\310\311\312#\210\211\313C\314\211\211A@\211\203D\314\315\316\"\210)\202-\f+I)\207" [tree cl-struct-ebrowse-ts-tags #1=#:v to-search result search 0 error #3="%s accessing a non-%s" ebrowse-ts-base-classes ebrowse-ts 9 nil mapatoms #[(#2=#:var) "\306N\307	!\2050\n	\310H>\204\311\312\313\314#\210	\315H>\2050	\f>\204+\f	C\244	
B\211\207" [#2# ti search cl-struct-ebrowse-ts-tags result to-search ebrowse-root vectorp 0 error #3# ebrowse-ts-subclasses ebrowse-ts 2] 5] ti ebrowse--tree-obarray] 6 (#$ . 68680)])
#@50 Return the list of direct super classes of TREE.
(defalias 'ebrowse-direct-base-classes #[(tree) "\305\306	!\305\211\2030@	\n\307H\f>\204\310\311\312\313#\210\n\314H>\203)\nBA\211\204\f*)\207" [result tree s --dolist-tail-- cl-struct-ebrowse-ts-tags nil ebrowse-base-classes 0 error "%s accessing a non-%s" ebrowse-ts-subclasses ebrowse-ts 2] 6 (#$ . 69548)])
#@209 Return an alist containing all members of TREE in group ACCESSOR.
ACCESSOR is the accessor function for the member list.
Elements of the result have the form (NAME . ACCESSOR), where NAME
is the member name.
(defalias 'ebrowse-name/accessor-alist #[(tree accessor) "	!\306\211\n:\203-\n@\211\307H
>\204\310\311\312\313#\210\314HB\fB\nA\211\202	\f\237+\207" [accessor tree #1=#:--cl-var-- member #2=#:--cl-var-- cl-struct-ebrowse-ms-tags nil 0 error "%s accessing a non-%s" ebrowse-ms-name ebrowse-ms 1] 5 (#$ . 69930)])
#@345 Return an alist describing all members visible in the current buffer.
Each element of the list has the form (MEMBER-NAME . ACCESSOR),
where MEMBER-NAME is the member's name, and ACCESSOR is the struct
accessor with which the member's list can be accessed in an `ebrowse-ts'
structure.  The list includes inherited members if these are visible.
(defalias 'ebrowse-name/accessor-alist-for-visible-members #[nil "\306	\"\2034\n\307!\310\211	\f:\203,\f@\306
	\"\237	\244	\fA\211\202	\237+\244\2025\n)\207" [ebrowse--displayed-class ebrowse--accessor list ebrowse--show-inherited-flag #1=#:--cl-var-- tree ebrowse-name/accessor-alist ebrowse-base-classes nil #2=#:--cl-var--] 5 (#$ . 70470)])
#@153 Like `ebrowse-name/accessor-alist-for-visible-members'.
This function includes members of base classes if base class members
are visible in the buffer.
(defalias 'ebrowse-name/accessor-alist-for-class-members #[nil "\306	\306\211\203>@\307\f\n\"\244
\2037\310\f!\306	\211\2036@	\307	\n\"\244A\211\204#*A\211\204\n\306+\207" [list ebrowse-member-list-accessors func --dolist-tail-- ebrowse--displayed-class ebrowse--show-inherited-flag nil ebrowse-name/accessor-alist ebrowse-base-classes class] 5 (#$ . 71182)])
(defvar ebrowse-n-boxes 0)
(defconst ebrowse-max-boxes 60)
#@142 Display a progress indicator.
TITLE is the title of the progress message.  START non-nil means
this is the first progress message displayed.
(defalias 'ebrowse-show-progress #[(title &optional start) "\305	\203\306\307\nT\"\310\311\f\312\313\n\314 \203\315\202\316\"\317\320##)\207" [message-log-max start ebrowse-n-boxes ebrowse-max-boxes title nil 0 mod message "%s: %s" propertize make-string display-color-p 32 43 face ebrowse-progress] 7 (#$ . 71785)])
#@205 Read `ebrowse-hs' and `ebrowse-ts' structures in the current buffer.
Return a list (HEADER TREE) where HEADER is the file header read
and TREE is a list of `ebrowse-ts' structures forming the class tree.
(defalias 'ebrowse-read #[nil "\306\307\310\217\306\311	!\203	G\312Y\203	\313H\n>\204 \314\315!\210	\313H\n>\204.\314\316\317\320#\210	\321H\230\204L\314\322	\313H\n>\204F\314\316\317\320#\210	\321H#\210\323\324\306w\210m\204{\325p!\326
\"\327\330?\"\210\203s
\240\210\202w
B*\202N)\331 \210	*D\207" [tree header cl-struct-ebrowse-hs-tags ebrowse-version-string gc-cons-threshold root nil (byte-code "\300p!\207" [read] 2) ((error (error "No Ebrowse file header found"))) vectorp 5 0 error "No Ebrowse file header found" "%s accessing a non-%s" ebrowse-hs-version ebrowse-hs 1 "File has wrong version `%s' (`%s' expected)" 2000000 " 	\n
" read ebrowse-class-in-tree ebrowse-show-progress "Reading data" garbage-collect old-root-ptr] 6 (#$ . 72260)])
#@150 Function installed as `revert-buffer-function' in tree buffers.
See that variable's documentation for the meaning of IGNORE-AUTO-SAVE and
NOCONFIRM.
(defalias 'ebrowse-revert-tree-buffer-from-file #[(_ignore-auto-save noconfirm) "\204\n\303\304!\205\305\306\307 \"\210\310 \210\311	\206\n!\210\312 \210p\207" [noconfirm buffer-file-name ebrowse--tags-file-name yes-or-no-p "Revert tree from disk? " mapc kill-buffer ebrowse-same-tree-member-buffer-list erase-buffer insert-file ebrowse-tree-mode] 3 (#$ . 73250)])
#@267 Create a new tree buffer for tree TREE.
The tree was loaded from file TAGS-FILE.
HEADER is the header structure of the file.
CLASSES is an obarray with a symbol for each class in the tree.
POP non-nil means popup the buffer up at the end.
Return the buffer created.
(defalias 'ebrowse-create-tree-buffer #[(tree tags-file header classes pop) "\306	!q\210\307 \210\n\f\310\311 \210\312\310!\210
\313=\203.\314	!\210\2029
\315=\2039\316	!\210p)\207" [ebrowse-tree-buffer-name name tree ebrowse--tree tags-file ebrowse--tags-file-name get-buffer-create ebrowse-tree-mode nil ebrowse-redraw-tree set-buffer-modified-p switch switch-to-buffer pop pop-to-buffer classes ebrowse--tree-obarray header ebrowse--header ebrowse--frozen-flag] 2 (#$ . 73777)])
#@595 Return an obarray holding all members of all classes in the current tree.

For each member, a symbol is added to the obarray.  Members are
extracted from the buffer-local tree `ebrowse--tree-obarray'.

Each symbol has its property `ebrowse-info' set to a list (TREE MEMBER-LIST
MEMBER) where TREE is the tree in which the member is defined,
MEMBER-LIST is a symbol describing the member list in which the member
is found, and MEMBER is a MEMBER structure describing the member.

The slot `member-table' of the buffer-local header structure of
type `ebrowse-hs' is set to the resulting obarray.
(defalias 'ebrowse-fill-member-table #[nil "\306\307\310\"\311\n\312H>\204\313\314\315\316#\210\n\211\317\320I\210)\321 \210\320\322\323\"\210)\n\312H>\2047\313\314\315\316#\210\n\211\317	I+\207" [i members ebrowse--header cl-struct-ebrowse-hs-tags #1=#:v c make-hash-table :test equal -1 0 error #3="%s accessing a non-%s" ebrowse-hs-member-table ebrowse-hs 4 nil garbage-collect mapatoms #[(#2=#:var) "\306N\307	!\205x\310\nT\211\311\246!\203\312\313\310\n!\"\210\314\211\205w
@\211	!\314\211\203n
@\211\315H>\204E\316\317\320\321#\210\322H\323\"	\fEB\324#\210*
A\211\2042*
A\211\204$\314*\207" [#2# c i ebrowse-member-list-accessors f --dolist-tail-- ebrowse-root vectorp zerop 10 ebrowse-show-progress "Preparing member lookup" nil 0 error #3# ebrowse-ms-name ebrowse-ms 1 gethash puthash m cl-struct-ebrowse-ms-tags member-name members value] 5] ebrowse--tree-obarray #4=#:v] 5 (#$ . 74551)])
#@123 Return the member obarray.  Build it if it hasn't been set up yet.
HEADER is the tree header structure of the class tree.
(defalias 'ebrowse-member-table #[(header) "\304H	>\204\305\306\307\310#\210\311H\2049\312 \313\n:\2031\n@\314\315\"=\2041\nA\211\202rq\210\316 \210+\304H	>\204G\305\306\307\310#\210\311H\207" [header cl-struct-ebrowse-hs-tags #1=#:--cl-var-- buffer 0 error "%s accessing a non-%s" ebrowse-hs-member-table ebrowse-hs 4 ebrowse-browser-buffer-list nil buffer-local-value ebrowse--header ebrowse-fill-member-table] 5 (#$ . 76109)])
#@104 Make sure every class in TREE is represented by a unique object.
Build obarray of all classes in TREE.
(defalias 'ebrowse-build-tree-obarray #[(tree) "\306\307\310\"	\311\211\n:\203\232\n@\312\310H
>\204\"\313\314\315\316#\210\317H\211\310H>\2046\313\314\320\321#\210\322H\203j\310H>\204M\313\314\320\321#\210\322H\323\310H>\204b\313\314\324\321#\210\317HQ\202~\310H>\204z\313\314\324\321#\210\317H)\"\211\325N\204\223\f\326\325#\210)\nA\211\202\f+\327	\"\210)\207" [classes tree #1=#:--cl-var-- root sym cl-struct-ebrowse-ts-tags make-vector 127 0 nil intern error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-scope ebrowse-cs 2 "::" ebrowse-cs-name ebrowse-root put ebrowse-insert-supers class cl-struct-ebrowse-cs-tags #2=#:v] 8 (#$ . 76687)])
#@529 Build base class lists in class tree TREE.
CLASSES is an obarray used to collect classes.

Helper function for `ebrowse-build-tree-obarray'.  Base classes should
be ordered so that immediate base classes come first, then the base
class of the immediate base class and so on.  This means that we must
construct the base-class list top down with adding each level at the
beginning of the base-class list.

We have to be cautious here not to end up in an infinite recursion
if for some reason a circle is in the inheritance graph.
(defalias 'ebrowse-insert-supers #[(tree classes) "\306\211	:\203\322	@\211\307H\f>\204\310\311\312\313#\210\n\314H\211\306\211
:\203\304\315
@\307H\f>\204=\310\311\316\313#\210
@\317H\211\307H>\204Q\310\311\320\321#\210\n\314H\203\200\n\307H>\204f\310\311\320\321#\210\n\314H\322\n\307H>\204y\310\311\323\321#\210\n\317HQ\202\222\n\307H>\204\217\310\311\323\321#\210\n\317H)\"\306\324N\203\260
\211\324N\240\210)\202\275\325\324
@#\210)
A\211\202)+\326\"\210	A\211\202+\306\207" [tree #1=#:--cl-var-- class subclasses cl-struct-ebrowse-ts-tags subclass nil 0 error "%s accessing a non-%s" ebrowse-ts-subclasses ebrowse-ts 2 intern ebrowse-ts-class 1 ebrowse-cs-scope ebrowse-cs "::" ebrowse-cs-name ebrowse-root put ebrowse-insert-supers sym next cl-struct-ebrowse-cs-tags classes #2=#:v #3=#:v] 8 (#$ . 77512)])
(byte-code "\204\342\303 \211\304	!\210\305 \203$\306	\307\310#\210\306	\311\312#\210\306	\313\314#\210\315 \304\n\316\"\210\306	\317\n#\210\306\n\320\321#\210\306\n\322\323#\210\306\n\324\325#\210\306\n\326\327#\210\306\n\330\331#\210\306\n\332\333#\210)\315 \304\n\316\"\210\306	\334\n#\210\306\n\335\336#\210\306\n\326\337#\210)\315 \304\n\316\"\210\306	\340\n#\210\306\n\322\341#\210\306\n\342\343#\210\306\n\344\345#\210\306	\346\347#\210)\306	\350\351#\210\306	\352\353#\210\306	\354\355#\210\306	\356\357#\210\306	\360\361#\210\306	\362\363#\210\306	\364\365#\210\306	\366\367#\210\306	\370\371#\210\306	\372\373#\210\306	\374\375#\210\306	\376\377#\210)\201@\201AN\204\376\201B\201@\201A\201C\201D!#\210\201E\300!\204\201B\300\201F\201G#\210\303\207" [ebrowse-tree-mode-map map map1 make-keymap suppress-keymap display-mouse-p define-key [down-mouse-3] ebrowse-mouse-3-in-tree-buffer [mouse-2] ebrowse-mouse-2-in-tree-buffer [down-mouse-1] ebrowse-mouse-1-in-tree-buffer make-sparse-keymap t "L" "d" ebrowse-tree-command:show-friends "f" ebrowse-tree-command:show-member-functions "F" ebrowse-tree-command:show-static-member-functions "t" ebrowse-tree-command:show-types "v" ebrowse-tree-command:show-member-variables "V" ebrowse-tree-command:show-static-member-variables "M" "a" ebrowse-mark-all-classes ebrowse-toggle-mark-at-point "T" ebrowse-toggle-file-name-display "s" ebrowse-show-file-name-at-point "w" ebrowse-set-tree-indentation "x" ebrowse-statistics "n" ebrowse-repeat-member-search "q" bury-buffer "*" ebrowse-expand-all "+" ebrowse-expand-branch "-" ebrowse-collapse-branch "/" ebrowse-read-class-name-and-go " " ebrowse-view-class-declaration "?" describe-mode "	" ebrowse-pop/switch-to-member-buffer-for-same-tree "" ebrowse-remove-class-at-point "\f" ebrowse-redraw-tree "
" ebrowse-find-class-declaration ebrowse-tree-mode-hook variable-documentation put purecopy "Hook run when entering Ebrowse-Tree mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp definition-name ebrowse-tree-mode] 6)
(defvar ebrowse-tree-mode-map (make-sparse-keymap))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\300\207" [ebrowse-tree-mode-map variable-documentation put purecopy "Keymap for `ebrowse-tree-mode'." boundp ebrowse-tree-mode-syntax-table definition-name ebrowse-tree-mode] 5)
(defvar ebrowse-tree-mode-syntax-table (make-syntax-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [ebrowse-tree-mode-syntax-table variable-documentation put purecopy "Syntax table for `ebrowse-tree-mode'." ebrowse-tree-mode-abbrev-table definition-name ebrowse-tree-mode] 5)
(defvar ebrowse-tree-mode-abbrev-table (progn (define-abbrev-table 'ebrowse-tree-mode-abbrev-table nil) ebrowse-tree-mode-abbrev-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [ebrowse-tree-mode-abbrev-table variable-documentation put purecopy "Abbrev table for `ebrowse-tree-mode'." ebrowse-tree-mode derived-mode-parent special-mode] 5)
#@499 Major mode for Ebrowse class tree buffers.
Each line corresponds to a class in a class tree.
Letters do not insert themselves, they are commands.
File operations in the tree buffer work on class tree data structures.
E.g.\[save-buffer] writes the tree to the file it was loaded from.

Tree mode key bindings:
\{ebrowse-tree-mode-map}

In addition to any hooks its parent mode `special-mode' might have run,
this mode runs the hook `ebrowse-tree-mode-hook', as the final step
during initialization.
(defalias 'ebrowse-tree-mode #[nil "\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\2036
\321 =\203<\322\f\323 \"\210)\324;\325\"\204V;<=\204V\326;\325<C#\210\327!\210\330\f!\210;<\331\332!=\307>\333\211?@\334 \210\335\336 !\204\235eb\210\337 \211A@?AA@@)\340\341!\210\342@!@\343 \210\340\333!\210\306\344!\210\333$\306\345!\210\346\347\350\"%\306\351!\210\333)=B\307\211CD\307E\306\352!\210\353*\306\354!\210?,\306\355!\210@-\306\356!\210F.\306\345!\210@\205\356\357@!%\306\351!\210\333)\360\361\362\333\307$\210\363\364\365\366z!\"\210@\203\367 \210\370\333!\210-\371\372!\207" [delay-mode-hooks major-mode mode-name ebrowse-tree-mode-map ebrowse-tree-mode-syntax-table parent make-local-variable t special-mode ebrowse-tree-mode "Ebrowse-Tree" 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 propertized-buffer-identification "C++ Tree" nil buffer-disable-undo zerop buffer-size ebrowse-read message "Sorting. Please be patient..." ebrowse-sort-tree-list erase-buffer ebrowse--show-file-names-flag ebrowse--tree-obarray make-vector 127 0 ebrowse--frozen-flag revert-buffer-function ebrowse-revert-tree-buffer-from-file ebrowse--header ebrowse--tree ebrowse--tags-file-name ebrowse-build-tree-obarray add-hook local-write-file-hooks ebrowse-write-file-hook-fn modify-syntax-entry 95 char-to-string 97 ebrowse-redraw-tree set-buffer-modified-p run-mode-hooks ebrowse-tree-mode-hook ebrowse-tree-mode-abbrev-table local-abbrev-table ident inhibit-read-only header tree #1=#:--cl-var-- mode-line-buffer-identification buffer-read-only selective-display selective-display-ellipses buffer-file-name] 6 (#$ . 82059) nil])
#@35 Update the tree buffer mode line.
(defalias 'ebrowse-update-tree-buffer-mode-line #[nil "\303\203\304	!\202\f\n!\210\305 \207" [ebrowse--frozen-flag ebrowse--tags-file-name ebrowse-tree-buffer-name ebrowse-rename-buffer ebrowse-frozen-tree-buffer-name force-mode-line-update] 3 (#$ . 84464)])
#@98 Remove from TREE class CLASS.
Kill all member buffers still containing a reference to the class.
(defalias 'ebrowse-remove-class-and-kill-member-buffers #[(tree class) "\306\307H	>\204\310\311\312\313#\210\314H\307H\n>\204\310\311\315\316#\210\307H	>\204-\310\311\312\313#\210\314H\314H\"\317
\"\f\320\321\322#\210)
\322\211\203\272@\211\307H	>\204b\310\311\323\313#\210\211\324\317\307H	>\204y\310\311\323\313#\210\324H\"I\210)\307H	>\204\220\310\311\325\313#\210\211\326\322I\210)\327\307H	>\204\252\310\311\323\313#\210\324H\"\210A\211\204O*\330!\210
)\207" [class cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags ebrowse--tree-obarray sym tree intern-soft 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-name ebrowse-cs delq put ebrowse-root nil ebrowse-ts-subclasses 2 ebrowse-ts-base-classes 9 ebrowse-remove-class-and-kill-member-buffers ebrowse-kill-member-buffers-displaying #1=#:v root --dolist-tail-- #2=#:v #3=#:v] 9 (#$ . 84767)])
#@101 Remove the class point is on from the class tree.
Do not ask for confirmation if FORCED is non-nil.
(defalias 'ebrowse-remove-class-at-point #[(forced) "\306 \211\307H	>\204\310\311\312\313#\210\314H\307H\n>\204!\310\311\315\316#\210\307H	>\204/\310\311\312\313#\210\314H\314H\307H	>\204C\310\311\317\313#\210\320H
\204T\321\322\323Q!\203r\324\"\325\326!\210\327\330\f\203j\331\202k\332#\210\333 \202u\327\334!+\207" [class cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags class-name subclasses forced ebrowse-tree-at-point 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-name ebrowse-cs ebrowse-ts-subclasses 2 y-or-n-p "Delete class " "? " ebrowse-remove-class-and-kill-member-buffers set-buffer-modified-p t message "%s %sdeleted." "and derived classes " "" ebrowse-redraw-tree "Aborted" ebrowse--tree] 5 (#$ . 85802) "P"])
#@98 Toggle mark for class cursor is on.
If given a numeric N-TIMES argument, mark that many classes.
(defalias 'ebrowse-toggle-mark-at-point #[(&optional n-times) "\306\211\307\310\217\210\212\306\311 \312\216\306\211:\203\235@\313\314\f\315H>\204.\316\317\320\321#\210\f\322H\315H >\204?\316\317\323\324#\210\f\315H>\204N\316\317\320\321#\210\f\322H\322H!\325Qeb\210\326
\306\327#\203\226\315\224b\210\330\322!\210\331\f\315H>\204z\316\317\332\321#\210\f\333H\203\204\334\202\205\335\322\"\210\336`S`\f#\210\315\225b\210\202ZA\211\202.\306\207" [to-change #1=#:--ebrowse-output-- buffer-read-only #2=#:--cl-var-- tree regexp nil (byte-code "\206\306\307	S\211\310Y\203E\311 \211\310H>\204\"\312\313\314\315#\210\n\211\316\n\310H>\2044\312\313\314\315#\210\n\316H?I\210)\306y\210\n
B\202*\307\207" [n-times #3=#:--cl-var-- tree cl-struct-ebrowse-ts-tags #4=#:v to-change 1 nil 0 ebrowse-tree-at-point error #5="%s accessing a non-%s" ebrowse-ts-mark ebrowse-ts 10] 7) ((error)) buffer-modified-p ((set-buffer-modified-p #1#)) "^.*\\b" regexp-quote 0 error #5# ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-name ebrowse-cs "\\b" re-search-forward t delete-char insert-char ebrowse-ts-mark 10 62 32 ebrowse-set-mark-props cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags] 7 (#$ . 86688) "p"])
#@52 Unmark, with PREFIX mark, all classes in the tree.
(defalias 'ebrowse-mark-all-classes #[(prefix) "\302\303\304	\"\210)\305ed\"\207" [tree ebrowse--tree-obarray nil mapatoms #[(#1=#:var) "\305N\306	!\205	\307H\n>\204\310\311\312\313#\210	\211\314\fI)\207" [#1# tree cl-struct-ebrowse-ts-tags #2=#:v prefix ebrowse-root vectorp 0 error "%s accessing a non-%s" ebrowse-ts-mark ebrowse-ts 10] 5] ebrowse-redraw-marks] 3 (#$ . 88027) "P"])
#@63 Display class marker signs in the tree between START and END.
(defalias 'ebrowse-redraw-marks #[(start end) "\212\302\303 \304\216\305\306\215\210+\307 )\207" [#1=#:--ebrowse-output-- buffer-read-only nil buffer-modified-p ((set-buffer-modified-p #1#)) end (byte-code "eb\210\305\211\203\n@\306	\f#\210\nA\211\204*\305\207" [ebrowse--tree root --dolist-tail-- start end nil ebrowse-draw-marks-fn] 5) ebrowse-update-tree-buffer-mode-line] 2 (#$ . 88477) nil])
#@59 Display class marker signs in TREE between START and END.
(defalias 'ebrowse-draw-marks-fn #[(tree start end) "`Y\203,\306\307!\210	\310H\n>\204\311\312\313\314#\210	\315H\203\"\316\202#\317c\210\320`S`	#\210\307y\210`V\203:\321\303\322\"\210	\310H\n>\204H\311\312\323\314#\210	\324H\322\211\205c
@\325\f#\210
A\211\204R\322*\207" [start tree cl-struct-ebrowse-ts-tags end sub --dolist-tail-- delete-char 1 0 error "%s accessing a non-%s" ebrowse-ts-mark ebrowse-ts 10 62 32 ebrowse-set-mark-props throw nil ebrowse-ts-subclasses 2 ebrowse-draw-marks-fn] 5 (#$ . 88954)])
#@81 Show filename in the line point is in.
With PREFIX, insert that many filenames.
(defalias 'ebrowse-show-file-name-at-point #[(prefix) "?\205\245\306\307 \310\216\311\f
W\205\244\312 \306\211 \313 \210\314\306w\210`\315\316!\317 |\210\204!j\210\316 \311H\">\204O\320\321\322\323#\210 \324H\311H#>\204a\320\321\325\326#\210 \311H\">\204q\320\321\322\323#\210 \324H\327H\206{\330\331\261\210`\332$\333\334$\"\335#+\210\313 \210\324y\210+\fT\211\202-\207" [ebrowse--show-file-names-flag #1=#:--ebrowse-output-- buffer-read-only prefix i --dotimes-limit-- nil buffer-modified-p ((set-buffer-modified-p #1#)) 0 ebrowse-tree-at-point beginning-of-line " 	*a-zA-Z0-9_" looking-at "(" line-end-position error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-file ebrowse-cs 4 "unknown" ")" ebrowse-file-name overlay-put make-overlay face file-name-existing start tree ebrowse-source-file-column cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags end] 6 (#$ . 89549) "p"])
#@45 Toggle display of filenames in tree buffer.
(defalias 'ebrowse-toggle-file-name-display #[nil "?\302e`\"\303 \210eb\210	Sy)\207" [ebrowse--show-file-names-flag old-line count-lines ebrowse-redraw-tree] 3 (#$ . 90586) nil])
#@48 Value is non-nil if BUFFER is a member buffer.
(defalias 'ebrowse-member-buffer-p #[(buffer) "\301\302\303!\"A\304=\207" [buffer assoc major-mode buffer-local-variables ebrowse-member-mode] 4 (#$ . 90818)])
#@52 Value is non-nil if BUFFER is a class tree buffer.
(defalias 'ebrowse-tree-buffer-p #[(buffer) "\301\302\303!\"A\304=\207" [buffer assoc major-mode buffer-local-variables ebrowse-tree-mode] 4 (#$ . 91032)])
#@56 Value is non-nil if BUFFER is a tree or member buffer.
(defalias 'ebrowse-buffer-p #[(buffer) "\301\302\303!\"A\304>\207" [buffer assoc major-mode buffer-local-variables (ebrowse-tree-mode ebrowse-member-mode)] 4 (#$ . 91246)])
#@46 Return a list of all tree or member buffers.
(defalias 'ebrowse-browser-buffer-list #[nil "\300\301\302 \"\207" [ebrowse-delete-if-not ebrowse-buffer-p buffer-list] 3 (#$ . 91481)])
#@38 Return a list of all member buffers.
(defalias 'ebrowse-member-buffer-list #[nil "\300\301\302 \"\207" [ebrowse-delete-if-not ebrowse-member-buffer-p buffer-list] 3 (#$ . 91669)])
#@36 Return a list of all tree buffers.
(defalias 'ebrowse-tree-buffer-list #[nil "\300\301\302 \"\207" [ebrowse-delete-if-not ebrowse-tree-buffer-p buffer-list] 3 (#$ . 91855)])
#@155 Return a list of buffers containing class trees.
The list will contain, for each class tree loaded,
one buffer.  Prefer tree buffers over member buffers.
(defalias 'ebrowse-known-class-trees-buffer-list #[nil "\306 \307 \244\310 \311\211\311\211\2034\f@\312\313\"\314
	\"\204&B\315
\316	#\210)\fA\211\204*+\207" [result set buffers buffer --dolist-tail-- tree ebrowse-tree-buffer-list ebrowse-member-buffer-list make-hash-table nil buffer-local-value ebrowse--tree gethash puthash t] 5 (#$ . 92036)])
#@68 Return a list of members buffers with same tree as current buffer.
(defalias 'ebrowse-same-tree-member-buffer-list #[nil "\300\301\302 \"\207" [ebrowse-delete-if-not #[(buffer) "\302\301\"	=\207" [buffer ebrowse--tree buffer-local-value] 3] ebrowse-member-buffer-list] 3 (#$ . 92560)])
#@109 Pop to the buffer displaying members.
Switch to buffer if prefix ARG.
If no member buffer exists, make one.
(defalias 'ebrowse-pop/switch-to-member-buffer-for-same-tree #[(arg) "\303 @\206\304!\206\305 \211\203\"\n\203\306	!\210\202\"\307	!\210	)\207" [ebrowse-member-buffer-name buf arg ebrowse-same-tree-member-buffer-list get-buffer ebrowse-tree-command:show-member-functions switch-to-buffer pop-to-buffer] 3 (#$ . 92854) "P"])
#@31 Switch to next member buffer.
(defalias 'ebrowse-switch-to-next-member-buffer #[nil "\303 p>A\211\203	@\202@\211p=\203 \304\305!\202&\306 \210\307\n!+\207" [list next-list next-buffer ebrowse-member-buffer-list error "No next buffer" bury-buffer switch-to-buffer] 3 (#$ . 93302) nil])
#@42 Kill all member buffers displaying TREE.
(defalias 'ebrowse-kill-member-buffers-displaying #[(tree) "\304 \305\211:\203%@\306\307	\"\211=\203\310	!\210A\211\202+\305\207" [#1=#:--cl-var-- buffer class tree ebrowse-member-buffer-list nil buffer-local-value ebrowse--displayed-class kill-buffer] 4 (#$ . 93604)])
#@65 Return the buffer name of a tree which is associated TAGS-FILE.
(defalias 'ebrowse-frozen-tree-buffer-name #[(tags-file) "\302	\303R\207" [ebrowse-tree-buffer-name tags-file " (" ")"] 4 (#$ . 93936)])
#@113 Pop to a browser buffer from any other buffer.
Pop to member buffer if no prefix ARG, to tree buffer otherwise.
(defalias 'ebrowse-pop-to-browser-buffer #[(arg) "\304\203		\202\n\n!\211\204\304\203\n\202	!\204$\305\306!\210\307!)\207" [arg ebrowse-tree-buffer-name ebrowse-member-buffer-name buffer get-buffer error "No browser buffer found" pop-to-buffer] 3 (#$ . 94145) "P"])
#@48 Set the indentation width of the tree display.
(defalias 'ebrowse-set-tree-indentation #[nil "\302\303\304\305!\306Q\307\211$!\211\211\310V\262\205\311\300!\210	\312 )\207" [ebrowse--indentation width string-to-number read-string "Indentation (default " int-to-string "): " nil 0 make-local-variable ebrowse-redraw-tree] 7 (#$ . 94544) nil])
#@82 Position cursor on CLASS.
Read a class name from the minibuffer if CLASS is nil.
(defalias 'ebrowse-read-class-name-and-go #[(&optional class) "\304	\204\305\306\307 \310\304$\neb\210~\210\310\311	\311Q\312\310\304#\203-\313\224b\210\314 \2020\315\316!*\207" [completion-ignore-case class selective-display ebrowse--last-regexp t completing-read "Goto class: " ebrowse-tree-obarray-as-alist nil "\\b" re-search-forward 0 ebrowse-unhide-base-classes error "Not found"] 5 (#$ . 94899) nil])
#@68 Display member variables; with prefix ARG in frozen member buffer.
(defalias 'ebrowse-tree-command:show-member-variables #[(arg) "\301\302\"\207" [arg ebrowse-display-member-buffer ebrowse-ts-member-variables] 3 (#$ . 95404) "P"])
#@68 Display member functions; with prefix ARG in frozen member buffer.
(defalias 'ebrowse-tree-command:show-member-functions #[(&optional arg) "\301\302\"\207" [arg ebrowse-display-member-buffer ebrowse-ts-member-functions] 3 (#$ . 95642) "P"])
#@75 Display static member variables; with prefix ARG in frozen member buffer.
(defalias 'ebrowse-tree-command:show-static-member-variables #[(arg) "\301\302\"\207" [arg ebrowse-display-member-buffer ebrowse-ts-static-variables] 3 (#$ . 95890) "P"])
#@75 Display static member functions; with prefix ARG in frozen member buffer.
(defalias 'ebrowse-tree-command:show-static-member-functions #[(arg) "\301\302\"\207" [arg ebrowse-display-member-buffer ebrowse-ts-static-functions] 3 (#$ . 96142) "P"])
#@68 Display friend functions; with prefix ARG in frozen member buffer.
(defalias 'ebrowse-tree-command:show-friends #[(arg) "\301\302\"\207" [arg ebrowse-display-member-buffer ebrowse-ts-friends] 3 (#$ . 96394) "P"])
#@76 Display types defined in a class; with prefix ARG in frozen member buffer.
(defalias 'ebrowse-tree-command:show-types #[(arg) "\301\302\"\207" [arg ebrowse-display-member-buffer ebrowse-ts-types] 3 (#$ . 96614) "P"])
#@55 Return the class structure for the class point is on.
(defalias 'ebrowse-tree-at-point #[nil "\300`\301\"\206\n\302\303!\207" [get-text-property ebrowse-tree error "Not on a class"] 3 (#$ . 96838)])
#@141 View or find the declarator of the class point is on.
VIEW non-nil means view it.  WHERE is additional position info.

(fn &key VIEW WHERE)
(defalias 'ebrowse-view/find-class-declaration #[(&rest #1=#:--cl-rest--) "\306>A@\307>A@\2038@\310>\203!AA\211\202\311>A@\203/\312\211\202\313\314@\"\210\202)\315 \211\316H
>\204J\313\317\320\321#\210\f\322H)\211 \316H!>\204_\313\317\323\324#\210 \325H\"\326\327 \316H!>\204w\313\317\330\324#\210 \322H\312 \316H!>\204\214\313\317\331\324#\210 \332H \316H!>\204\240\313\317\323\324#\210 \325H \316H!>\204\264\313\317\333\324#\210 \334H \316H!>\204\310\313\317\335\324#\210 \336H&#\337#$ \312E\"%	\n&-\207" [#1# view where #2=#:--cl-keys-- cl-x cl-struct-ebrowse-ts-tags :view :where (:view :where :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:view :where)" ebrowse-tree-at-point 0 "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-file ebrowse-cs 4 vector ebrowse-bs ebrowse-cs-name ebrowse-cs-flags 3 ebrowse-cs-pattern 5 ebrowse-cs-point 6 ebrowse-view/find-file-and-search-pattern class cl-struct-ebrowse-cs-tags file browse-struct ebrowse--header ebrowse--tags-file-name] 12 (#$ . 97045)])
#@136 Find a class declaration and position cursor on it.
PREFIX 4 means find it in another window.
PREFIX 5 means find it in another frame.
(defalias 'ebrowse-find-class-declaration #[(prefix) "\301\302\303\304\305U\203\306\202\307U\203\310\202\311$\207" [prefix ebrowse-view/find-class-declaration :view nil :where 4 other-window 5 other-frame this-window] 6 (#$ . 98294) "p"])
#@134 View class declaration and position cursor on it.
PREFIX 4 means view it in another window.
PREFIX 5 means view it in another frame.
(defalias 'ebrowse-view-class-declaration #[(prefix) "\301\302\303\304\305U\203\306\202\307U\203\310\202\311$\207" [prefix ebrowse-view/find-class-declaration :view view :where 4 other-window 5 other-frame this-window] 6 (#$ . 98685) "p"])
#@214 Find source file FILE.
Source files are searched for (a) relative to TAGS-FILE
which is the path of the BROWSE file from which the class tree was loaded,
and (b) in the directories named in `ebrowse-search-path'.
(defalias 'ebrowse-find-source-file #[(file tags-file) "\306\307\310	!\"\311\n!\203\n\2024\f
\2033\2043\307
@\"\311\n!\203,\n
A)\202)\204=\312\313\"\210*\207" [file tags-file try-file file-name ebrowse-search-path search-in nil expand-file-name file-name-directory file-readable-p error "File `%s' not found"] 5 (#$ . 99075)])
#@148 Function called when exiting View mode in BUFFER.
Restore frame configuration active before viewing the file,
and possibly kill the viewed buffer.
(defalias 'ebrowse-view-exit-fn #[(buffer) "\306\211r\nq\210\f)\307\310\311 \306\211\n
:\2035
@\211\n\236\204.\nB
A\211\202\237+\"\210	\205B	\n!*\207" [original-frame-configuration exit-action buffer ebrowse--frame-configuration ebrowse--view-exit-action #1=#:--cl-var-- nil mapc delete-frame frame-list frame #2=#:--cl-var--] 5 (#$ . 99644)])
#@107 View a file FILE in another frame.
The new frame is deleted when you quit viewing the file in that frame.
(defalias 'ebrowse-view-file-other-frame #[(file) "\306 \307!\310!\311	!\210\312\304!\210\312\305!\210\n?\205&\313	!?\205&\314\315\316 \316 \317BB\320\"+\207" [file buf-to-view had-a-buf old-frame-configuration ebrowse--frame-configuration ebrowse--view-exit-action current-frame-configuration get-file-buffer find-file-noselect switch-to-buffer-other-frame make-local-variable buffer-modified-p kill-buffer view-mode-enter selected-window t ebrowse-view-exit-fn] 4 (#$ . 100166) nil])
#@841 Find or view a member or class.
STRUC is an `ebrowse-bs' structure (or a structure including that)
describing what to search.
INFO is a list (HEADER MEMBER-OR-CLASS ACCESSOR).  HEADER is the
header structure of a class tree.  MEMBER-OR-CLASS is either an
`ebrowse-ms' or `ebrowse-cs' structure depending on what is searched.
ACCESSOR is an accessor function for the member list of a member
if MEMBER-OR-CLASS is an `ebrowse-ms'.
FILE is the file to search the member in.
FILE is not taken out of STRUC here because the filename in STRUC
may be nil in which case the filename of the class description is used.
TAGS-FILE is the name of the BROWSE file from which the
tree was loaded.
If VIEW is non-nil, view file else find the file.
WHERE is either `other-window', `other-frame' or `this-window' and
specifies where to find/view the result.
(defalias 'ebrowse-view/find-file-and-search-pattern #[(struc info file tags-file &optional view where) "\204\306\307	\310H\n>\204\306\311\312\313#\210	\314H\"\210\315\"\316\317 !\203'\320
\203Y	\321\322!\204;\323\324B\f\320=\203K\325!\207\f\326=\203U\327!\207\330!\207\f\320=\203f\331!\210\202w\f\326=\203s\332!\210\202w\333!\210\324	\"\207" [file struc cl-struct-ebrowse-bs-tags tags-file where view error "Sorry, no file information available for %s" 0 "%s accessing a non-%s" ebrowse-bs-name ebrowse-bs 1 ebrowse-find-source-file window-dedicated-p selected-window other-window boundp view-mode-hook nil ebrowse-find-pattern view-file-other-window other-frame ebrowse-view-file-other-frame view-file find-file-other-window find-file-other-frame find-file ebrowse-temp-position-to-view info ebrowse-temp-info-to-view] 6 (#$ . 100775)])
#@318 Generate a suitable regular expression for a member or class NAME.
This is `regexp-quote' for most symbols, except for operator names
which may contain whitespace.  For these symbols, replace white
space in the symbol name (generated by BROWSE) with a regular
expression matching any number of whitespace characters.
(defalias 'ebrowse-symbol-regexp #[(name) "\303!\304\305\306	\n#\203#	\304\211\224O\307	\304\225\310OQ\304\224\311\\\202	*\207" [name regexp start regexp-quote 0 string-match "[ 	]+" "[ 	]*" nil 5] 5 (#$ . 102499)])
#@53 Construct a regexp for a declaration of class NAME.
(defalias 'ebrowse-class-declaration-regexp #[(name) "\301\302\303!\304R\207" [name "^[ 	]*\\(template[ 	\n]*<.*>\\)?" "[ 	\n]*\\(class\\|struct\\|union\\).*\\S_" ebrowse-symbol-regexp "\\S_"] 4 (#$ . 103046)])
#@50 Construct a regexp for matching a variable NAME.
(defalias 'ebrowse-variable-declaration-regexp #[(name) "\301\302!\301Q\207" [name "\\S_" ebrowse-symbol-regexp] 3 (#$ . 103316)])
#@50 Construct a regexp for matching a function NAME.
(defalias 'ebrowse-function-declaration/definition-regexp #[(name) "\301\302!\303Q\207" [name "^[a-zA-Z0-9_:*&<>, 	]*\\S_" ebrowse-symbol-regexp "[ 	\n]*("] 3 (#$ . 103503)])
#@47 Construct a regexp matching a define of NAME.
(defalias 'ebrowse-pp-define-regexp #[(name) "\301\302!P\207" [name "^[ 	]*#[ 	]*define[ 	]+" regexp-quote] 3 (#$ . 103734)])
#@359 Find a pattern.

This is a kluge: Ebrowse allows you to find or view a file containing
a pattern.  To be able to do a search in a viewed buffer,
`view-mode-hook' is temporarily set to this function;
`ebrowse-temp-position-to-view' holds what to search for.

INFO is a list (TREE-HEADER TREE-OR-MEMBER MEMBER-LIST).

(fn &optional POSITION INFO &aux VIEWING)
(defalias 'ebrowse-find-pattern #[(&optional position info &rest #1=#:--cl-rest--) "\306	\203\307\310\311\312	G\\D\"\210\n\204 \210A\313\f
2~\210\n\314H3>\2041\315\316\317\320#\210\n\321H4\n\314H3>\204E\315\316\322\320#\210\n\323H5\3246\30672@82A\2119@:9A\211;@<;A=<:8>?@4;\203\206\325\3264!P44\204I\327?!\203?G\330Y\203?\314HA>\203@\331>\203\302\332\n\314H3>\204\273\315\316\333\320#\210\n\334H!\202?\211B\335CB\336B\314H3>\204\335\315\316\337\320#\210B\340HC\"\314U+\204\341\n\314H3>\204\372\315\316\333\320#\210\n\334H!\202\342\n\314H3>\204\315\316\333\320#\210\n\334H!4\202I\327?!\203I?G\343Y\203I?\314HD>\203I\344\n\314H3>\204C\315\316\333\320#\210\n\334H!4\345\346!\203a\346J\203a\347\350\3515\"!\210\3474!\210\313E\306Fe56Z]b\210\352456\\\313#\203\207\313F\306\211E\202\210\313\203\234o?\211E\203\2346\211\\6\202gE\203\245\313\202\247F*\2117\203\267\353 \210\354\355!\202\n\314H3>\204\306\315\316\317\320#\210\n\321H\247\203\3465b\210.\203\334\354\356!\202\357\360!\210\361\312!\202.\203\361\354\356!\202\204\371\315\360!\210\357\360!\210\361\312!.\207" [viewing #1# position view-mode-hook ebrowse-temp-position-to-view ebrowse-temp-info-to-view nil signal wrong-number-of-arguments ebrowse-find-pattern 2 t 0 error "%s accessing a non-%s" ebrowse-bs-pattern ebrowse-bs 5 ebrowse-bs-point 6 100 "^.*" regexp-quote vectorp 11 (ebrowse-ts-member-variables ebrowse-ts-static-variables ebrowse-ts-types) ebrowse-variable-declaration-regexp ebrowse-bs-name 1 512 logand ebrowse-bs-flags 3 ebrowse-pp-define-regexp ebrowse-function-declaration/definition-regexp 8 ebrowse-class-declaration-regexp boundp ebrowse-debug y-or-n-p format "start = %d? " re-search-forward beginning-of-line run-hooks ebrowse-view/find-hook ebrowse-not-found-hook message "Not found" sit-for info cl-struct-ebrowse-bs-tags pattern start offset found #2=#:xcar #3=#:xcdr #4=#:xcar #5=#:xcdr #6=#:xcar #7=#:xcdr header class-or-member member-list cl-struct-ebrowse-ms-tags member bit cl-struct-ebrowse-cs-tags #8=#:--cl-var-- #9=#:--cl-var--] 6 (#$ . 103914)])
#@85 Redisplay the complete tree.
QUIETLY non-nil means don't display progress messages.
(defalias 'ebrowse-redraw-tree #[(&optional quietly) "\204\303\304!\210\212\305\306 \307\216\310 \210\311 \210,\312 \210\206!\303\305!\207" [quietly #1=#:--ebrowse-output-- buffer-read-only message "Displaying..." nil buffer-modified-p ((set-buffer-modified-p #1#)) erase-buffer ebrowse-draw-tree-fn ebrowse-update-tree-buffer-mode-line] 2 (#$ . 106448) nil])
#@97 Set text properties for class marker signs between START and END.
TREE denotes the class shown.
(defalias 'ebrowse-set-mark-props #[(start end tree) "\304	\305\306\307\310\311\n\312BBBBBB#\210	\313\314\315	\"\303#+\207" [start end tree face add-text-properties mouse-face highlight ebrowse-what mark ebrowse-tree (help-echo "double-mouse-1: mark/unmark") ebrowse-tree-mark overlay-put make-overlay] 10 (#$ . 106905)])
#@152 Display a single class and recursively its subclasses.
This function may look weird, but this is faster than recursion.

(fn &aux STACK1 STACK2 START)
(defalias 'ebrowse-draw-tree-fn #[(&rest #1=#:--cl-rest--) "\306\211\306\203\307\310\311G\312\\D\"\210\313\fG\312\"\314\f!\306\2117\3068	\203\330\211A@	\211A@\2117\312H9>\204F\315\316\317\320#\2107\321H8`\306\211:;<7\312H9>\204e\315\316\322\320#\2107\323H\203p\324\202q\325c\210
=_>\\j\210`8\2118\312H?>\204\221\315\316\326\327#\2108\330H\203\3058\312H?>\204\250\315\316\326\327#\2108\330H\3318\312H?>\204\275\315\316\332\327#\2108\321HQ\202\3318\312H?>\204\325\315\316\332\327#\2108\321H)c\2108\211@\333A@\334@\312HB>\204\367\315\316\335\336#\210@\337HA\"\312U+\204\340c\210\n`\341
!\203\342\202\343&C\344\345\nC\"\346&#+\210\n;`:D\203gEj\210`\3478\312H?>\204G\315\316\350\327#\2108\351H\206O\352\353\261\210\n`\354&C\344\345\nC\"\346&#+\210\355<\211T7#\210\356;:\357\360\361\362\3637\364BBBBBB#\210\365c\210+7\312H9>\204\231\315\316\366\320#\2107\330H\203&\3147\312H9>\204\261\315\316\366\320#\2107\330H!	\244\3137\312H9>\204\312\315\316\366\320#\2107\330HG
T\"\244\202&.\306\207" [stack1 stack2 start #1# ebrowse--tree level nil signal wrong-number-of-arguments ebrowse-draw-tree-fn 0 make-list copy-sequence error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-ts-mark 10 ">" " " ebrowse-cs-scope ebrowse-cs 2 "::" ebrowse-cs-name 32 logand ebrowse-bs-flags ebrowse-bs 3 "<>" zerop ebrowse-root-class ebrowse-default overlay-put make-overlay face "(" ebrowse-cs-file 4 "unknown" ")" ebrowse-file-name ebrowse-set-mark-props add-text-properties mouse-face highlight ebrowse-what class-name ebrowse-tree (help-echo "double-mouse-1: (un)expand tree; mouse-2: member functions, mouse-3: menu") "\n" ebrowse-ts-subclasses tree class cl-struct-ebrowse-ts-tags end-of-class-name start-of-class-name start-of-line ebrowse--indentation ebrowse-tree-left-margin cl-struct-ebrowse-cs-tags member bit cl-struct-ebrowse-bs-tags end ebrowse--show-file-names-flag ebrowse-source-file-column] 11 (#$ . 107337)])
#@94 Expand a sub-tree that has been previously collapsed.
With prefix ARG, expand all sub-trees.
(defalias 'ebrowse-expand-branch #[(arg) "\203\301!\207\302\303!\207" [arg ebrowse-expand-all ebrowse-collapse-fn nil] 2 (#$ . 109522) "P"])
#@140 Fold (do no longer display) the subclasses of the current class.
(The class cursor is on.)  With prefix ARG, fold all trees in the buffer.
(defalias 'ebrowse-collapse-branch #[(arg) "\203	\301?!\207\302\303!\207" [arg ebrowse-expand-all ebrowse-collapse-fn t] 2 (#$ . 109767) "P"])
#@75 Expand or fold all trees in the buffer.
COLLAPSE non-nil means fold them.
(defalias 'ebrowse-expand-all #[(collapse) "\203\305\202	\306\203\307\202\310\311\312 \313\216\212eb\210\n\311w\210m?\205D\2032\314\315!\2039\316\317!\210	c\210\203\315\311w\210\202.\207" [collapse insertion line-end #1=#:--ebrowse-output-- buffer-read-only "^\n" "^
" "
" "\n" nil buffer-modified-p ((set-buffer-modified-p #1#)) looking-at "\n " delete-char 1] 2 (#$ . 110058) "P"])
#@56 Unhide the line the cursor is on and all base classes.
(defalias 'ebrowse-unhide-base-classes #[nil "\304\305 \306\216\212\304\211\307\304x\210\310\311!?\205R\312\304w\210\n\203%\313V\205R\314\315\304\316#\205R\317\225\317\224Z\n\203=\nW\203L\310\320!\203L\321\313!\210\322c\210\323u\210\202.\207" [#1=#:--ebrowse-output-- buffer-read-only last-indent indent nil buffer-modified-p ((set-buffer-modified-p #1#)) "^
\n" looking-at "[
\n][^ 	]" "
\n 	" 1 re-search-backward "[
\n][ 	]*" t 0 "
" delete-char 10 -1] 4 (#$ . 110545)])
#@67 Hide/show a single line in the tree.
COLLAPSE non-nil means hide.
(defalias 'ebrowse-hide-line #[(collapse) "\212\303\304 \305\216\306\303w\210\307\310!\210\n\203\311\202\312c,\207" [#1=#:--ebrowse-output-- buffer-read-only collapse nil buffer-modified-p ((set-buffer-modified-p #1#)) "^
\n" delete-char 1 13 10] 2 (#$ . 111099)])
#@86 Collapse or expand a branch of the tree.
COLLAPSE non-nil means collapse the branch.
(defalias 'ebrowse-collapse-fn #[(collapse) "\304\305 \306\216\212\307 \210\310\304w\210im?\2059\212\311\304w\210`Tb\210\310\304w\210i\nV)\2059\312!\210\311\304w\210`Tb\210\202-\207" [#1=#:--ebrowse-output-- buffer-read-only indentation collapse nil buffer-modified-p ((set-buffer-modified-p #1#)) beginning-of-line "> 	" "^
\n" ebrowse-hide-line] 2 (#$ . 111442)])
#@53 Keymap used in electric Ebrowse buffer list window.
(defvar ebrowse-electric-list-mode-map nil (#$ . 111907))
(byte-code "\204\231\303 \303 \211\304\nA@\305\"\210\304	A@\305\"\210\306\n\307	#\210\306\n\310\311#\210\306\n\312\313#\210\306\n\314\315#\210\306\n\316\317#\210\306\n\320\321#\210\306\n\322\321#\210\306\n\323\324#\210\306\n\325\326#\210\306\n\327\330#\210\306\n\331\332#\210\306\n\333\334#\210\306\n\335\332#\210\306\n\336\334#\210\306\n\337\340#\210\306\n\341\342#\210\306\n\343\344#\210\306\n\345\346#\210\306\n\347\350#\210\306\n\351\352#\210\306\n\347\350#\210*\353\354\355\356#\210\353\305\357\360#\210\361\362N\204\263\353\361\362\363\364!#\210\365\300!\204\277\353\300\366\354#\210\317\207" [ebrowse-electric-list-mode-map submap map make-keymap fillarray ebrowse-electric-list-undefined define-key "" "" suspend-frame "" Helper-help "?" Helper-describe-bindings "" nil "" ebrowse-electric-list-quit "q" " " ebrowse-electric-list-select "\f" recenter "" universal-argument "" previous-line "" next-line "p" "n" "v" ebrowse-electric-view-buffer "" scroll-up-command "v" scroll-down-command "" scroll-other-window ">" end-of-buffer "<" beginning-of-buffer put ebrowse-electric-list-mode mode-class special suppress-keymap t ebrowse-electric-list-mode-hook variable-documentation purecopy "Hook run when entering Electric Position Menu mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp definition-name] 6)
(defvar ebrowse-electric-list-mode-map (make-sparse-keymap))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\300\207" [ebrowse-electric-list-mode-map variable-documentation put purecopy "Keymap for `ebrowse-electric-list-mode'." boundp ebrowse-electric-list-mode-syntax-table definition-name ebrowse-electric-list-mode] 5)
(defvar ebrowse-electric-list-mode-syntax-table (make-syntax-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [ebrowse-electric-list-mode-syntax-table variable-documentation put purecopy "Syntax table for `ebrowse-electric-list-mode'." ebrowse-electric-list-mode-abbrev-table definition-name ebrowse-electric-list-mode] 5)
(defvar ebrowse-electric-list-mode-abbrev-table (progn (define-abbrev-table 'ebrowse-electric-list-mode-abbrev-table nil) ebrowse-electric-list-mode-abbrev-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [ebrowse-electric-list-mode-abbrev-table variable-documentation put purecopy "Abbrev table for `ebrowse-electric-list-mode'." ebrowse-electric-list-mode derived-mode-parent nil] 5)
#@171 Mode for electric tree list mode.

This mode runs the hook `ebrowse-electric-list-mode-hook', as the final step
during initialization.

\{ebrowse-electric-list-mode-map}
(defalias 'ebrowse-electric-list-mode #[nil "\306\300!\210\307\310 \210\311\312\313!\210\314\f!\210
\315\302>\203/\316!\302>\317\240\210\306\320!\210\321\307\211)\322\323!\207" [delay-mode-hooks major-mode mode-name ebrowse-electric-list-mode-map ebrowse-electric-list-mode-syntax-table ebrowse-electric-list-mode-abbrev-table make-local-variable t kill-all-local-variables ebrowse-electric-list-mode "Electric Position Menu" use-local-map set-syntax-table "Electric Tree Menu" copy-sequence "Tree Buffers" Helper-return-blurb "return to buffer editing" run-mode-hooks ebrowse-electric-list-mode-hook local-abbrev-table mode-line-buffer-identification mode-line-format truncate-lines buffer-read-only] 3 (#$ . 114592) nil])
#@37 Display a list of all tree buffers.
(defalias 'ebrowse-list-tree-buffers #[nil "\303\304!q\210\305\306 \210\307\310\261\210\311 \305\211\203)\n@\312	!\313\261\210\nA\211\204*\314\211\207" [buffer-read-only buffer --dolist-tail-- get-buffer-create "*Tree Buffers*" nil erase-buffer "Tree\n" "----\n" ebrowse-known-class-trees-buffer-list buffer-name "\n" t] 3 (#$ . 115515)])
#@72 Return a buffer containing a tree or nil if no tree found or canceled.
(defalias 'ebrowse-electric-choose-tree #[nil "\305 @\204\n\306\307!\210\310\211\211\311 \312\216\311 \313\216\314 \210*\315\316!\317!\320!\210\321\216	q\210\322 \210\323\324\215+\n\203B	q\210\325\n!\326	!\210\n+\207" [window buffer select #1=#:wconfig #2=#:wconfig ebrowse-known-class-trees-buffer-list error "No tree buffers" nil current-window-configuration ((set-window-configuration #1#)) ((set-window-configuration #2#)) ebrowse-list-tree-buffers Electric-pop-up-window "*Tree Buffers*" window-buffer shrink-window-if-larger-than-buffer ((byte-code "q\210\301!\210\302\303!\207" [buffer bury-buffer message nil] 2)) ebrowse-electric-list-mode ebrowse-electric-list-select (byte-code "\303\304!\210eb\210\305y\210`db\210\306y\210`\307\211b\210\310\311\312\313\314\n	B%+\207" [goal-column last first message "<<< Press Space to bury the list >>>" 2 -1 0 Electric-command-loop ebrowse-electric-list-select nil t ebrowse-electric-list-looper] 8) ebrowse-electric-get-buffer kill-buffer] 3 (#$ . 115907) nil])
#@161 Prevent cursor from moving beyond the buffer end.
Don't let it move into the title lines.
See 'Electric-command-loop' for a description of STATE and CONDITION.
(defalias 'ebrowse-electric-list-looper #[(state condition) "\203@\302>\204\303@A\"\207`	@W\203eb\210\304y\207`	AV\2055db\210\305y\210\306d!\2055\307\305!\207" [condition state (buffer-read-only end-of-buffer beginning-of-buffer) signal 2 -1 pos-visible-in-window-p recenter] 3 (#$ . 117014)])
#@46 Function called for keys that are undefined.
(defalias 'ebrowse-electric-list-undefined #[nil "\300\301!\210\302\303!\207" [message "Type C-h for help, ? for commands, q to quit, Space to select." sit-for 4] 2 (#$ . 117486) nil])
#@26 Discard the buffer list.
(defalias 'ebrowse-electric-list-quit #[nil "\300\301\302\"\207" [throw ebrowse-electric-list-select nil] 3 (#$ . 117722) nil])
#@39 Select a buffer from the buffer list.
(defalias 'ebrowse-electric-list-select #[nil "\300\301`\"\207" [throw ebrowse-electric-list-select] 3 (#$ . 117881) nil])
#@53 Get a buffer corresponding to the line POINT is in.
(defalias 'ebrowse-electric-get-buffer #[(point) "\302e\"\303Z\211\304 8)\207" [point index count-lines 2 ebrowse-known-class-trees-buffer-list] 4 (#$ . 118048)])
#@26 View buffer point is on.
(defalias 'ebrowse-electric-view-buffer #[nil "\301`!\211\203\302!\202\303\304!)\207" [buffer ebrowse-electric-get-buffer view-buffer error "Buffer no longer exists"] 3 (#$ . 118271) nil])
#@72 Read a browser buffer name from the minibuffer and return that buffer.
(defalias 'ebrowse-choose-from-browser-buffers #[nil "\304 \211\203 \211A@)\204@\2023\305 \2063\306\307!\2023\310\311\312\313\211\310$\212\314!\210)\315!*)\207" [buffers x insert-default-directory file ebrowse-known-class-trees-buffer-list ebrowse-electric-choose-tree error "No tree buffer" t read-file-name "Find tree: " nil find-file find-buffer-visiting] 6 (#$ . 118497)])
(byte-code "\204\215\304 \211\305	!\210\306 \203\307	\310\311#\210\307	\312\313#\210\314 \305\n\315\"\210\307	\316\n#\210\307\n\317\320#\210\307\n\321\322#\210\307\n\323\324#\210\307\n\325\326#\210\307\n\327\330#\210)\314 \305\n\315\"\210\307	\331\n#\210\307\n\332\333#\210\307\n\317\334#\210\307\n\335\336#\210\307\n\337\340#\210\307\n\341\342#\210\307\n\343\344#\210)\314 \305\n\315\"\210\307	\345\n#\210\314 \305\315\"\210\307\n\332#\210\307\346\347#\210\307\350\351#\210\307\352\353#\210)\307\n\321\354#\210\307\n\346\355#\210\307\n\327\356#\210\307\n\341\357#\210\307\n\360\361#\210)\314 \305\n\315\"\210\307	\362\n#\210\307\n\323\363#\210\307\n\335\364#\210\307\n\345\365#\210\307\n\325\366#\210\307\n\327\367#\210\307\n\370\371#\210\307\n\360\372#\210\307\n\373\374#\210)\314 \305\n\315\"\210\307	\375\n#\210\307\n\376\377#\210\307\n\325\201@#\210\307\n\360\201A#\210)\307	\335\201B#\210\307	\376\201C#\210\307	\201D\201E#\210\307	\370\201F#\210\307	\360\201G#\210\307	\201H\201I#\210\307	\201J\201K#\210\307	\201L\201M#\210\307	\201N\201O#\210\307	\201P\201Q#\210)\201R\201SN\204\251\201T\201R\201S\201U\201V!#\210\201W\300!\204\275\201T\300\201X\201Y#\210\304\207" [ebrowse-member-mode-map map map1 map2 make-keymap suppress-keymap display-mouse-p define-key [down-mouse-3] ebrowse-member-mouse-3 [mouse-2] ebrowse-member-mouse-2 make-sparse-keymap t "C" "b" ebrowse-switch-member-buffer-to-base-class "c" ebrowse-switch-member-buffer-to-any-class "d" ebrowse-switch-member-buffer-to-derived-class "n" ebrowse-switch-member-buffer-to-next-sibling-class "p" ebrowse-switch-member-buffer-to-previous-sibling-class "D" "a" ebrowse-toggle-member-attributes-display ebrowse-toggle-base-class-display "f" ebrowse-freeze-member-buffer "l" ebrowse-toggle-long-short-display "r" ebrowse-toggle-regexp-display "w" ebrowse-set-member-buffer-column-width "F" "i" ebrowse-toggle-private-member-filter "o" ebrowse-toggle-protected-member-filter "u" ebrowse-toggle-public-member-filter ebrowse-toggle-const-member-filter ebrowse-toggle-inline-member-filter ebrowse-toggle-pure-member-filter ebrowse-remove-all-member-filters "v" ebrowse-toggle-virtual-member-filter "L" ebrowse-display-friends-member-list ebrowse-display-function-member-list ebrowse-display-static-functions-member-list ebrowse-display-next-member-list ebrowse-display-previous-member-list "t" ebrowse-display-types-member-list ebrowse-display-variables-member-list "V" ebrowse-display-static-variables-member-list "G" "m" ebrowse-goto-visible-member/all-member-lists ebrowse-repeat-member-search ebrowse-goto-visible-member ebrowse-find-member-declaration ebrowse-switch-to-next-member-buffer "q" bury-buffer ebrowse-show-displayed-class-in-tree ebrowse-view-member-declaration " " ebrowse-view-member-definition "?" describe-mode "	" ebrowse-pop-from-member-to-tree-buffer "\f" ebrowse-redisplay-member-buffer "
" ebrowse-find-member-definition ebrowse-member-mode-hook variable-documentation put purecopy "Hook run when entering Ebrowse-Members mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp definition-name ebrowse-member-mode] 6)
(defvar ebrowse-member-mode-map (make-sparse-keymap))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\300\207" [ebrowse-member-mode-map variable-documentation put purecopy "Keymap for `ebrowse-member-mode'." boundp ebrowse-member-mode-syntax-table definition-name ebrowse-member-mode] 5)
(defvar ebrowse-member-mode-syntax-table (make-syntax-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [ebrowse-member-mode-syntax-table variable-documentation put purecopy "Syntax table for `ebrowse-member-mode'." ebrowse-member-mode-abbrev-table definition-name ebrowse-member-mode] 5)
(defvar ebrowse-member-mode-abbrev-table (progn (define-abbrev-table 'ebrowse-member-mode-abbrev-table nil) ebrowse-member-mode-abbrev-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [ebrowse-member-mode-abbrev-table variable-documentation put purecopy "Abbrev table for `ebrowse-member-mode'." ebrowse-member-mode derived-mode-parent special-mode] 5)
#@234 Major mode for Ebrowse member buffers.

In addition to any hooks its parent mode `special-mode' might have run,
this mode runs the hook `ebrowse-member-mode-hook', as the final step
during initialization.

\{ebrowse-member-mode-map}
(defalias 'ebrowse-member-mode #[nil "\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\2036
\321 =\203<\322\f\323 \"\210)\324%\325\"\204V%&=\204V\326%\325&C#\210\327!\210\330\f!\210%&\331\306\332\"\210\333\334!'\307(\335)\307\211*+\335,\336-./01\335\21123\335\21145\337\340\341\342z!\"\210)\343\344!\207" [delay-mode-hooks major-mode mode-name ebrowse-member-mode-map ebrowse-member-mode-syntax-table parent make-local-variable t special-mode ebrowse-member-mode "Ebrowse-Members" 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 mapc (ebrowse--decl-column ebrowse--n-columns ebrowse--column-width ebrowse--show-inherited-flag ebrowse--filters ebrowse--accessor ebrowse--displayed-class ebrowse--long-display-flag ebrowse--source-regexp-flag ebrowse--attributes-flag ebrowse--member-list ebrowse--tree ebrowse--member-mode-strings ebrowse--tags-file-name ebrowse--header ebrowse--tree-obarray ebrowse--virtual-display-flag ebrowse--inline-display-flag ebrowse--const-display-flag ebrowse--pure-display-flag ebrowse--frozen-flag) propertized-buffer-identification "C++ Members" nil [0 1 2] modify-syntax-entry 95 char-to-string 97 run-mode-hooks ebrowse-member-mode-hook ebrowse-member-mode-abbrev-table local-abbrev-table mode-line-buffer-identification buffer-read-only ebrowse--long-display-flag ebrowse--attributes-flag ebrowse--show-inherited-flag ebrowse--source-regexp-flag ebrowse--filters ebrowse-default-declaration-column ebrowse--decl-column ebrowse-default-column-width ebrowse--column-width ebrowse--virtual-display-flag ebrowse--inline-display-flag ebrowse--const-display-flag ebrowse--pure-display-flag] 6 (#$ . 123246) nil])
#@62 Return the name of the class displayed in the member buffer.
(defalias 'ebrowse-class-name-displayed-in-member-buffer #[nil "\303H	>\204\304\305\306\307#\210\310H\303H\n>\204\304\305\311\312#\210\303H	>\204,\304\305\306\307#\210\310H\310H\207" [ebrowse--displayed-class cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-name ebrowse-cs] 4 (#$ . 125388)])
(put 'ebrowse-class-name-displayed-in-member-buffer 'byte-optimizer 'byte-compile-inline-expand)
#@68 Return a string describing what is displayed in the member buffer.
(defalias 'ebrowse-member-list-name #[nil "	\211\306H>\204\307\310\311\312#\210\n\313H\306H\f>\204!\307\310\314\315#\210\n\306H>\204/\307\310\311\312#\210\n\313H\313H
\230)\203>\316\202?\317N\207" [ebrowse--accessor ebrowse--displayed-class tree cl-struct-ebrowse-ts-tags cl-struct-ebrowse-bs-tags ebrowse-globals-name 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-bs-name ebrowse-bs ebrowse-global-title ebrowse-title] 6 (#$ . 125930)])
(put 'ebrowse-member-list-name 'byte-optimizer 'byte-compile-inline-expand)
#@41 Update the mode line of member buffers.
(defalias 'ebrowse-update-member-buffer-mode-line #[nil "\2057	\306H\n>\204\307\310\311\312#\210	\313H\306H>\204\"\307\310\314\315#\210	\306H\n>\2040\307\310\311\312#\210	\313H\313H\316P\211
	\211\306H\n>\204K\307\310\311\312#\210\313H\306H>\204]\307\310\317\320#\210\306H\n>\204l\307\310\311\312#\210\313H\313H\230)\203}\321\202~\322NP\323!\324\f\203\222\202\224!\210\325 *\207" [ebrowse--frozen-flag ebrowse--displayed-class cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags name ebrowse--accessor 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-name ebrowse-cs " " ebrowse-bs-name ebrowse-bs ebrowse-global-title ebrowse-title propertized-buffer-identification ebrowse-rename-buffer force-mode-line-update tree cl-struct-ebrowse-bs-tags ebrowse-globals-name ident mode-line-buffer-identification ebrowse-member-buffer-name] 7 (#$ . 126551)])
#@41 Toggle frozen status of current buffer.
(defalias 'ebrowse-freeze-member-buffer #[nil "?\301 \207" [ebrowse--frozen-flag ebrowse-redisplay-member-buffer] 1 (#$ . 127506) nil])
#@115 Show the currently displayed class in the tree window.
With prefix ARG, switch to the tree buffer else pop to it.
(defalias 'ebrowse-show-displayed-class-in-tree #[(arg) "\305H	>\204\306\307\310\311#\210\312H\305H\n>\204\306\307\313\314#\210\305H	>\204,\306\307\310\311#\210\312H\312H\315\f!\205;\316!)\207" [ebrowse--displayed-class cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags class-name arg 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-name ebrowse-cs ebrowse-pop-from-member-to-tree-buffer ebrowse-read-class-name-and-go] 4 (#$ . 127691) "P"])
#@88 Set the column width of the member display.
The new width is read from the minibuffer.
(defalias 'ebrowse-set-member-buffer-column-width #[nil "\304\305\306\307\203\f	\202
\n!\310Q!!\211\211\311V\262\205)\203%\202'\312 )\207" [ebrowse--long-display-flag ebrowse--decl-column ebrowse--column-width width string-to-number read-from-minibuffer "Column width (" int-to-string "): " 0 ebrowse-redisplay-member-buffer] 6 (#$ . 128292) nil])
#@128 Pop from a member buffer to the matching tree buffer.
Switch to the buffer if prefix ARG.  If no tree buffer exists,
make one.
(defalias 'ebrowse-pop-from-member-to-tree-buffer #[(arg) "\306\307!!\206\306	!\206\310\n\f\311%\211\203'\f\203#\312\202$\313
!\210
)\207" [ebrowse--tags-file-name ebrowse-tree-buffer-name ebrowse--tree ebrowse--header ebrowse--tree-obarray buf get-buffer ebrowse-frozen-tree-buffer-name ebrowse-create-tree-buffer pop switch-to-buffer pop-to-buffer arg] 7 (#$ . 128747) "P"])
#@67 Switch the member buffer to display the member list for ACCESSOR.
(defalias 'ebrowse-display-member-list-for-accessor #[(accessor) "\n!\304 \207" [accessor ebrowse--accessor ebrowse--displayed-class ebrowse--member-list ebrowse-redisplay-member-buffer] 2 (#$ . 129269)])
#@57 Switch buffer to INCR'th next/previous list of members.
(defalias 'ebrowse-cyclic-display-next/previous-member-list #[(incr) "\304	\"\211\305V\262\203\nT	8\2066	@\2026\211\305W\262\2056\nS\211\305Y\2032\n	8\2066\306	!@\307!)\207" [ebrowse--accessor ebrowse-member-list-accessors index incr ebrowse-position 0 last ebrowse-display-member-list-for-accessor] 3 (#$ . 129550)])
#@36 Switch buffer to next member list.
(defalias 'ebrowse-display-next-member-list #[nil "\300\301!\207" [ebrowse-cyclic-display-next/previous-member-list 1] 2 (#$ . 129946) nil])
#@40 Switch buffer to previous member list.
(defalias 'ebrowse-display-previous-member-list #[nil "\300\301!\207" [ebrowse-cyclic-display-next/previous-member-list -1] 2 (#$ . 130128) nil])
#@39 Display the list of member functions.
(defalias 'ebrowse-display-function-member-list #[nil "\300\301!\207" [ebrowse-display-member-list-for-accessor ebrowse-ts-member-functions] 2 (#$ . 130319) nil])
#@39 Display the list of member variables.
(defalias 'ebrowse-display-variables-member-list #[nil "\300\301!\207" [ebrowse-display-member-list-for-accessor ebrowse-ts-member-variables] 2 (#$ . 130526) nil])
#@46 Display the list of static member variables.
(defalias 'ebrowse-display-static-variables-member-list #[nil "\300\301!\207" [ebrowse-display-member-list-for-accessor ebrowse-ts-static-variables] 2 (#$ . 130734) nil])
#@46 Display the list of static member functions.
(defalias 'ebrowse-display-static-functions-member-list #[nil "\300\301!\207" [ebrowse-display-member-list-for-accessor ebrowse-ts-static-functions] 2 (#$ . 130956) nil])
#@30 Display the list of friends.
(defalias 'ebrowse-display-friends-member-list #[nil "\300\301!\207" [ebrowse-display-member-list-for-accessor ebrowse-ts-friends] 2 (#$ . 131178) nil])
#@28 Display the list of types.
(defalias 'ebrowse-display-types-member-list #[nil "\300\301!\207" [ebrowse-display-member-list-for-accessor ebrowse-ts-types] 2 (#$ . 131366) nil])
#@53 Toggle display of `virtual', `inline', `const' etc.
(defalias 'ebrowse-toggle-member-attributes-display #[nil "?\301 \207" [ebrowse--attributes-flag ebrowse-redisplay-member-buffer] 1 (#$ . 131548) nil])
#@60 Toggle the display of members inherited from base classes.
(defalias 'ebrowse-toggle-base-class-display #[nil "?\301 \207" [ebrowse--show-inherited-flag ebrowse-redisplay-member-buffer] 1 (#$ . 131760) nil])
#@41 Toggle display of pure virtual members.
(defalias 'ebrowse-toggle-pure-member-filter #[nil "?\301 \207" [ebrowse--pure-display-flag ebrowse-redisplay-member-buffer] 1 (#$ . 131976) nil])
#@34 Toggle display of const members.
(defalias 'ebrowse-toggle-const-member-filter #[nil "?\301 \207" [ebrowse--const-display-flag ebrowse-redisplay-member-buffer] 1 (#$ . 132171) nil])
#@35 Toggle display of inline members.
(defalias 'ebrowse-toggle-inline-member-filter #[nil "?\301 \207" [ebrowse--inline-display-flag ebrowse-redisplay-member-buffer] 1 (#$ . 132361) nil])
#@36 Toggle display of virtual members.
(defalias 'ebrowse-toggle-virtual-member-filter #[nil "?\301 \207" [ebrowse--virtual-display-flag ebrowse-redisplay-member-buffer] 1 (#$ . 132554) nil])
#@21 Remove all filters.
(defalias 'ebrowse-remove-all-member-filters #[nil "\306\307	W\203\n\211I\210T\211\202*\310\211\310\211\n\311 \207" [i --dotimes-limit-- ebrowse--filters ebrowse--pure-display-flag ebrowse--const-display-flag ebrowse--virtual-display-flag 3 0 nil ebrowse-redisplay-member-buffer ebrowse--inline-display-flag] 4 (#$ . 132750) nil])
#@38 Toggle visibility of public members.
(defalias 'ebrowse-toggle-public-member-filter #[nil "\300\301!\210\302 \207" [ebrowse-set-member-access-visibility 0 ebrowse-redisplay-member-buffer] 2 (#$ . 133121) nil])
#@41 Toggle visibility of protected members.
(defalias 'ebrowse-toggle-protected-member-filter #[nil "\300\301!\210\302 \207" [ebrowse-set-member-access-visibility 1 ebrowse-redisplay-member-buffer] 2 (#$ . 133337) nil])
#@39 Toggle visibility of private members.
(defalias 'ebrowse-toggle-private-member-filter #[nil "\300\301!\210\302 \207" [ebrowse-set-member-access-visibility 2 ebrowse-redisplay-member-buffer] 2 (#$ . 133559) nil])
(defalias 'ebrowse-set-member-access-visibility #[(vis) "\n	\nH?\205\nI*\207" [ebrowse--filters #1=#:v vis #2=#:v] 4])
#@63 Toggle between long and short display form of member buffers.
(defalias 'ebrowse-toggle-long-short-display #[nil "?\301 \207" [ebrowse--long-display-flag ebrowse-redisplay-member-buffer] 1 (#$ . 133903) nil])
#@113 Toggle declaration/definition regular expression display.
Used in member buffers showing the long display form.
(defalias 'ebrowse-toggle-regexp-display #[nil "?\301 \207" [ebrowse--source-regexp-flag ebrowse-redisplay-member-buffer] 1 (#$ . 134121) nil])
#@133 Find the file containing a member definition.
With PREFIX 4. find file in another window, with prefix 5
find file in another frame.
(defalias 'ebrowse-find-member-definition #[(&optional prefix) "\301\302\303#\207" [prefix ebrowse-view/find-member-declaration/definition nil t] 4 (#$ . 134386) "p"])
#@133 View the file containing a member definition.
With PREFIX 4. find file in another window, with prefix 5
find file in another frame.
(defalias 'ebrowse-view-member-definition #[(prefix) "\301\302\211#\207" [prefix ebrowse-view/find-member-declaration/definition t] 4 (#$ . 134694) "p"])
#@136 Find the file containing a member's declaration.
With PREFIX 4. find file in another window, with prefix 5
find file in another frame.
(defalias 'ebrowse-find-member-declaration #[(prefix) "\301\302\"\207" [prefix ebrowse-view/find-member-declaration/definition nil] 3 (#$ . 134988) "p"])
#@136 View the file containing a member's declaration.
With PREFIX 4. find file in another window, with prefix 5
find file in another frame.
(defalias 'ebrowse-view-member-declaration #[(prefix) "\301\302\"\207" [prefix ebrowse-view/find-member-declaration/definition t] 3 (#$ . 135285) "p"])
#@332 Find or view a member declaration or definition.
With PREFIX 4. find file in another window, with prefix 5
find file in another frame.
DEFINITION non-nil means find the definition, otherwise find the
declaration.
INFO is a list (TREE ACCESSOR MEMBER) describing the member to
search.
TAGS-FILE is the file name of the BROWSE file.
(defalias 'ebrowse-view/find-member-declaration/definition #[(prefix view &optional definition info header tags-file) "\300\301\215\207" [--cl-block-ebrowse-view/find-member-declaration/definition-- (byte-code "\204	\n\204\f\306\211\211\211\211\f\307U\203\310\202&\f\311U\203%\312\202&\313789:;<\203O<@;<\211=A@)9<AA@:\202h\314 \211>@;>A@:\315>87)?97\203\333\316\317\320;\321H@>\204\200\322\323\324\325#\210;\326H	;\321H@>\204\225\322\323\324\325#\210;\326H\306E;\321H@>\204\253\322\323\324\325#\210;\326H\321HA>\204\275\322\323\327\330#\210;\321H@>\204\315\322\323\324\325#\210;\326H\307H\nB
&\"\210C\203\3529\331=\203\352\306CC\203^\332\333:\321HD>\204\322\323\334\333#\210:\326H\306:\321HD>\204\322\323\335\333#\210:\336H:\321HD>\204*\322\323\337\333#\210:\340H:\321HD>\204>\322\323\341\333#\210:\342H:\321HD>\204R\322\323\343\333#\210:\344H\306\211\211\211&::\321HD>\204n\322\323\345\333#\210:\307H\206\355C\203\265;\321H@>\204\212\322\323\324\325#\210;\326H\321HA>\204\234\322\323\346\330#\210;\321H@>\204\254\322\323\324\325#\210;\326H\347H\202\355;\321H@>\204\305\322\323\324\325#\210;\326H\321HA>\204\327\322\323\327\330#\210;\321H@>\204\347\322\323\324\325#\210;\326H\307H\2118\203\f\350:\321HD>\204\322\323\351\333#\210:\352H!\203Y\353\354C\203\355\202\356\357C\203\"\356\202#\355\360:\321HD>\2044\322\323\334\333#\210:\326H\361\260!\203S\362\306!\210\363\fBC?<\n&\202\321\322\364!\202\321\320\332\365:\321HD>\204l\322\323\334\333#\210:\326H\306:\321HD>\204\201\322\323\335\333#\210:\336H:\321HD>\204\225\322\323\345\333#\210:\307H:\321HD>\204\251\322\323\366\333#\210:\311H:\321HD>\204\275\322\323\351\333#\210:\352H&:9E8\nB
&.\207" [header ebrowse--header tags-file ebrowse--tags-file-name prefix where nil 4 other-window 5 other-frame this-window ebrowse-member-info-from-point 2 throw --cl-block-ebrowse-view/find-member-declaration/definition-- ebrowse-view/find-file-and-search-pattern 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-file ebrowse-cs ebrowse-ts-member-variables vector ebrowse-ms ebrowse-ms-name ebrowse-ms-flags 3 ebrowse-ms-definition-file 8 ebrowse-ms-definition-pattern 9 ebrowse-ms-definition-point 10 ebrowse-ms-file ebrowse-cs-source-file 7 zerop ebrowse-ms-point 6 y-or-n-p "No information about " "definition" "declaration" ".  Search for " " of `" "'? " message ebrowse-view/find-member-declaration/definition "Search canceled" ebrowse-bs ebrowse-ms-pattern on-class file accessor member tree info x #1=#:--cl-var-- ebrowse--accessor cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags view definition cl-struct-ebrowse-ms-tags] 13)] 2 (#$ . 135580)])
#@25 Force buffer redisplay.
(defalias 'ebrowse-redisplay-member-buffer #[nil "\203\306\202	\307\310\311 \312\216\313 \210\314 \210	\f
\"\210\203Y\315
!\310\211\203X@db\210n\203=\316\202>\317c\210\314!\210	!\"\210A\211\204-*\320 ,\207" [ebrowse--long-display-flag display-fn #1=#:--ebrowse-output-- buffer-read-only ebrowse--member-list ebrowse--displayed-class ebrowse-draw-member-long-fn ebrowse-draw-member-short-fn nil buffer-modified-p ((set-buffer-modified-p #1#)) erase-buffer ebrowse-draw-member-buffer-class-line ebrowse-base-classes "\n\n" "\n" ebrowse-update-member-buffer-mode-line ebrowse--show-inherited-flag super --dolist-tail-- ebrowse--accessor] 4 (#$ . 138710) nil])
#@152 Display the title line for a class section in the member buffer.
CLASS non-nil means display that class' title.  Otherwise use
the class cursor is on.
(defalias 'ebrowse-draw-member-buffer-class-line #[(&optional class) "`\206	\306\211\307c\210`\f\310H\">\204 \311\312\313\314#\210\f\315H\211\310H#>\2043\311\312\316\317#\210\320H\203b\310H#>\204H\311\312\316\317#\210\320H\321\310H#>\204[\311\312\322\317#\210\315HQ\202t\310H#>\204q\311\312\322\317#\210\315H)c\210\f\310H\">\204\206\311\312\313\314#\210\f\315H\211$\323%$\324$\310H&>\204\242\311\312\325\326#\210$\327H%\"\310U+\204\262\330c\210`\331c\210
`\332'\333\334
'\"\335#+\210\336\n\337#\210\340
\n\341\f$,\207" [class ebrowse--displayed-class class-name-end class-name-start tree start nil "class " 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-scope ebrowse-cs 2 "::" ebrowse-cs-name 32 logand ebrowse-bs-flags ebrowse-bs 3 "<>" ":\n\n" ebrowse-member-class overlay-put make-overlay face add-text-properties (ebrowse-what class-name mouse-face highlight help-echo "mouse-3: menu") put-text-property ebrowse-tree cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags member bit cl-struct-ebrowse-bs-tags end] 7 (#$ . 139432)])
#@158 Start point for member buffer creation.
LIST is the member list to display.  STAND-ALONE non-nil
means the member buffer is standalone.  CLASS is its class.
(defalias 'ebrowse-display-member-buffer #[(list &optional stand-alone class) "\n\f\306\307!\204\310 \311 r\312\216\2030\313!\210\202:\313\314!!\210\315 \210!	
\316\317 \210p.	\207" [ebrowse--tree-obarray classes ebrowse--tree tree ebrowse--tags-file-name tags-file nil get-buffer ebrowse-tree-at-point internal--before-save-selected-window ((internal--after-save-selected-window save-selected-window--state)) pop-to-buffer get-buffer-create ebrowse-member-mode t ebrowse-redisplay-member-buffer ebrowse--header header temp-buffer-setup-hook ebrowse-member-buffer-name temp-buffer class save-selected-window--state list ebrowse--member-list ebrowse--displayed-class ebrowse--accessor stand-alone ebrowse--frozen-flag buffer-read-only] 3 (#$ . 140698)])
#@73 Return t if MEMBER must be displayed under the current filter settings.
(defalias 'ebrowse-member-display-p #[(member) "	\306H\n>\204\307\310\311\312#\210	\313HH\205\242\203;	\211\314\315	\306H
>\204/\307\310\316\317#\210	\320H\f\"\306U+?\205\242\203a	\211\321\315	\306H
>\204U\307\310\316\317#\210	\320H\f\"\306U+?\205\242\203{\322	!\205\242	G\313Y\205\242	\306H
>\205\242\203\241	\211\323\315	\306H
>\204\225\307\310\316\317#\210	\320H\f\"\306U+?\205\242	\207" [ebrowse--filters member cl-struct-ebrowse-ms-tags ebrowse--const-display-flag bit cl-struct-ebrowse-bs-tags 0 error "%s accessing a non-%s" ebrowse-ms-visibility ebrowse-ms 7 4 logand ebrowse-bs-flags ebrowse-bs 3 2 vectorp 1 ebrowse--inline-display-flag ebrowse--pure-display-flag ebrowse--virtual-display-flag] 6 (#$ . 141672)])
#@47 Insert a string for the attributes of MEMBER.
(defalias 'ebrowse-draw-member-attributes #[(member) "\211\303\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U+\204$\313\202%\314\211\315\304\305H\n>\204:\306\307\310\311#\210\312H	\"\305U+\204I\316\202J\314\211\317\304\305H\n>\204_\306\307\310\311#\210\312H	\"\305U+\204n\320\202o\314\211\321\304\305H\n>\204\204\306\307\310\311#\210\312H	\"\305U+\204\223\322\202\224\314\211\323\304\305H\n>\204\251\306\307\310\311#\210\312H	\"\305U+\204\270\324\202\271\314\211\325\304\305H\n>\204\316\306\307\310\311#\210\312H	\"\305U+\204\335\326\202\336\314\211\327\304\305H\n>\204\363\306\307\310\311#\210\312H	\"\305U+\204\330\202\314\211\331\304\305H\n>\204\306\307\310\311#\210\312H	\"\305U+\204'\332\202(\314\211\333\304\305H\n>\204=\306\307\310\311#\210\312H	\"\305U+\204L\334\202M\314\261	\207" [member bit cl-struct-ebrowse-bs-tags 32 logand 0 error "%s accessing a non-%s" ebrowse-bs-flags ebrowse-bs 3 "T" "-" 256 "C" 1 "v" 2 "i" 4 "c" 8 "0" 16 "m" 64 "e" 128 "t"] 14 (#$ . 142506)])
#@67 Insert a string for the regular expression matching MEMBER-STRUC.
(defalias 'ebrowse-draw-member-regexp #[(member-struc) "\203	\305H\n>\204\306\307\310\311#\210	\312H\202)	\305H\n>\204&\306\307\313\311#\210	\314H\211;\203Z\315!\316\261\210\317\305!\210\320\321\f\\!\210\322\323\324\325#\203T\305\224\305\225|\210\326c\210\202@\317\327!\202\\\330c)\207" [ebrowse--source-regexp-flag member-struc cl-struct-ebrowse-ms-tags pattern ebrowse--decl-column 0 error "%s accessing a non-%s" ebrowse-ms-definition-pattern ebrowse-ms 9 ebrowse-ms-pattern 5 ebrowse-trim-string "...\n" beginning-of-line move-to-column 4 re-search-forward "[ 	]+" nil t " " 2 "[not recorded or unknown]\n"] 5 (#$ . 143628)])
#@92 Display member buffer for MEMBER-LIST in long form.
TREE is the class tree of MEMBER-LIST.
(defalias 'ebrowse-draw-member-long-fn #[(member-list tree) "\306\307\"\310\211\203\212\n@\211\203\203	\311H>\204 \312\313\314\315#\210	\316H`\211\311
G\"S^Oc\210\317\f`\320\321\322\323\324	\325#\326BBBBBBBB#\210`\"j\210\327\f`\320\310$\210$\203{`\330c\210\331	!\210\332c\210\f`\333%\334\335\f%\"\336#+\210)\337c\210\340	!\210*\nA\211\204*\341c\210eb\207" [member-list member-struc --dolist-tail-- cl-struct-ebrowse-ms-tags start name mapcar ebrowse-member-display-p nil 0 error "%s accessing a non-%s" ebrowse-ms-name ebrowse-ms 1 add-text-properties mouse-face highlight ebrowse-what member-name ebrowse-member ebrowse-tree (help-echo "mouse-2: view definition; mouse-3: menu") put-text-property "<" ebrowse-draw-member-attributes ">" ebrowse-member-attribute overlay-put make-overlay face " " ebrowse-draw-member-regexp "\n" ebrowse--decl-column tree ebrowse--attributes-flag end] 13 (#$ . 144344)])
#@91 Display MEMBER-LIST in short form.
TREE is the class tree in which the members are found.
(defalias 'ebrowse-draw-member-short-fn #[(member-list tree) "\306	\203\n\307\202\306\\\310\311 \n\245]\312\313
\"\314\"\211#\203\300#@\211\"\203\267\"\306H$>\204;\315\316\317\320#\210\"\310H\314`\314%&'(\n_j\210\321&`\322\314$\210`'	\203\200\323c\210\324\"!\210\325c\210'`\326)*\327\330*)\"\331#+\210`%(\306(GS^Oc\210\332%`\333\334\335\"\322\336\337+\340BBBBBBBB#\210T\211\fY\203\266\306\341c\210,#A\211#\204\"*\211\306V\262\203\315\341c\210eb*\207" [ebrowse--column-width ebrowse--attributes-flag column-width i ebrowse--n-columns member-list 0 12 1 ebrowse-width-of-drawable-area mapcar ebrowse-member-display-p nil error "%s accessing a non-%s" ebrowse-ms-name ebrowse-ms put-text-property mouse-face "<" ebrowse-draw-member-attributes "> " ebrowse-member-attribute overlay-put make-overlay face add-text-properties ebrowse-what member-name ebrowse-member highlight ebrowse-tree (help-echo "mouse-2: view definition; mouse-3: menu") "\n" member --dolist-tail-- cl-struct-ebrowse-ms-tags start-of-name start-of-column start-of-entry name end start tree] 13 (#$ . 145371)])
#@180 Ger information about the member at point.
The result has the form (TREE MEMBER NULL-P).  TREE is the tree
we're in, MEMBER is the member we're on.  NULL-P is t if MEMBER
is nil.
(defalias 'ebrowse-member-info-from-point #[nil "\302`\303\"\206\n\304\305!\302`\306\"\211\211?E*\207" [member tree get-text-property ebrowse-tree error "No information at point" ebrowse-member] 5 (#$ . 146596)])
#@156 Position cursor on a member read from the minibuffer.
With PREFIX, search all members in the tree.  Otherwise consider
only members visible in the buffer.
(defalias 'ebrowse-goto-visible-member/all-member-lists #[(_prefix) "\306\307 \310\311	\312\306$\313\n	\"A\211\204\314\315\n\"\210\f=\204+
!\316 \210\317\n!,\207" [completion-ignore-case completion-list member accessor ebrowse--accessor ebrowse--displayed-class t ebrowse-name/accessor-alist-for-class-members completing-read "Goto member: " nil assoc error "`%s' not found" ebrowse-redisplay-member-buffer ebrowse-move-point-to-member ebrowse--member-list] 6 (#$ . 146999) "p"])
#@187 Position point on a member.
Read the member's name from the minibuffer.  Consider only members
visible in the member buffer.
REPEAT non-nil means repeat the search that number of times.
(defalias 'ebrowse-goto-visible-member #[(repeat) "\304\305 \306\307	\310\304$\311\n\"+\207" [completion-ignore-case completion-list member repeat t ebrowse-name/accessor-alist-for-visible-members completing-read "Goto member: " nil ebrowse-move-point-to-member] 5 (#$ . 147654) "p"])
#@103 Repeat the last regular expression search.
REPEAT, if specified, says repeat the search REPEAT times.
(defalias 'ebrowse-repeat-member-search #[(repeat) "\204\302\303!\210\304\305w\210\306\305\307	$\203\310\224b\210\311\305w\207eb\210\306\305\307#\2030\310\224b\210\311\305w\207\302\312!\207" [ebrowse--last-regexp repeat error "No regular expression remembered" "^ 	\n" nil re-search-forward t 0 " 	\n" "Not found"] 5 (#$ . 148136) "p"])
#@159 Set point on member NAME in the member buffer
COUNT, if specified, says search the COUNT'th member with the same name.

(fn NAME &optional COUNT &aux MEMBER)
(defalias 'ebrowse-move-point-to-member #[(name &optional count &rest #1=#:--cl-rest--) "\306	\203\307\310\311\312	G\\D\"\210eb\210~\210\n\313\nGS^O\314\315!\316Q\317\f\306\320
$\2035\313\224Tb\2028\321\322!)\207" [member #1# name ebrowse--column-width ebrowse--last-regexp count nil signal wrong-number-of-arguments ebrowse-move-point-to-member 2 0 "[ 	\n]" regexp-quote "[ \n	]" re-search-forward t error "Not found"] 5 (#$ . 148590)])
#@131 Switch member buffer to a class read from the minibuffer.
Use TITLE as minibuffer prompt.
COMPL-LIST is a completion list to use.
(defalias 'ebrowse-switch-member-buffer-to-other-class #[(title compl-list) "\211A@)?\205
@@\306\n#\206\307\310!\211\n
!\311 *\207" [compl-list x initial title class ebrowse--displayed-class ebrowse-completing-read-value error "Not found" ebrowse-redisplay-member-buffer ebrowse--accessor ebrowse--member-list] 5 (#$ . 149202)])
#@59 Switch member buffer to a class read from the minibuffer.
(defalias 'ebrowse-switch-member-buffer-to-any-class #[nil "\300\301\302 \"\207" [ebrowse-switch-member-buffer-to-other-class "Goto class: " ebrowse-tree-obarray-as-alist] 3 (#$ . 149681) nil])
#@37 Switch buffer to ARG'th base class.
(defalias 'ebrowse-switch-member-buffer-to-base-class #[(arg) "\306!\206	\307\310!\n\203\257	\211A@)\203\257	\311\211\f:\203\240\f@\211\312H>\2045\307\313\314\315#\210
\316H\211\312H>\204I\307\313\317\320#\210\321H\203}\312H>\204`\307\313\317\320#\210\321H\322\312H>\204u\307\313\323\320#\210\316HQ\202\221\312H>\204\215\307\313\323\320#\210\316H)
BB\fA\211\202\237+\324\325\")\202\272	@!\326 )\207" [ebrowse--displayed-class supers arg x #1=#:--cl-var-- s ebrowse-direct-base-classes error "No base classes" nil 0 "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-scope ebrowse-cs 2 "::" ebrowse-cs-name ebrowse-switch-member-buffer-to-other-class "Goto base class: " ebrowse-redisplay-member-buffer #2=#:--cl-var-- cl-struct-ebrowse-ts-tags class cl-struct-ebrowse-cs-tags alist ebrowse--accessor ebrowse--member-list] 7 (#$ . 149939) "P"])
#@30 Move to ARG'th next sibling.
(defalias 'ebrowse-switch-member-buffer-to-next-sibling-class #[(arg) "\301!\207" [arg ebrowse-switch-member-buffer-to-sibling-class] 2 (#$ . 150904) "p"])
#@34 Move to ARG'th previous sibling.
(defalias 'ebrowse-switch-member-buffer-to-previous-sibling-class #[(arg) "\301[!\207" [arg ebrowse-switch-member-buffer-to-sibling-class] 2 (#$ . 151096) "p"])
#@81 Switch member display to nth sibling class.
Prefix arg INC specifies which one.
(defalias 'ebrowse-switch-member-buffer-to-sibling-class #[(inc) "\306\211\307	!\310\n\203H\n\211A@)\203&\311\312\n!\306#\202(\n@\211\2042\313\314!\210\315H>\204B\313\316\317\320#\210\321H))\322	
\"\\\211\211\315W\262\203a\323\324!\210\202k\f
8\204k\323\325!\210\315\f
GS^]\211
8\211!\326 ,\207" [ebrowse--tree ebrowse--displayed-class supers cls index containing-list nil ebrowse-direct-base-classes #[(trees) "\306\211	:\203K	@\211\307H\f>\204\310\311\312\313#\210\n\314H\307H
>\204,\310\311\315\316#\210\n\307H\f>\204:\310\311\312\313#\210\n\314H\314H\nBB	A\211\202\237+\207" [trees #1=#:--cl-var-- tr #2=#:--cl-var-- cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags nil 0 error #3="%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-name ebrowse-cs] 5] ebrowse-completing-read-value "Relative to base class: " error "Not found" 0 #3# ebrowse-ts-subclasses ebrowse-ts 2 ebrowse-position message "No previous class" "No next class" ebrowse-redisplay-member-buffer #4=#:--cl-trees-alist-- x tree cl-struct-ebrowse-ts-tags inc ebrowse--accessor ebrowse--member-list] 6 (#$ . 151297) "p"])
#@135 Switch member display to nth derived class.
Prefix arg ARG says which class should be displayed.  Default is
the first derived class.
(defalias 'ebrowse-switch-member-buffer-to-derived-class #[(arg) "\306	\307H\n>\204\310\311\312\313#\210	\314H\206\310\315!\f\203/\211A@)\203/\316\317 \"\202:@	!\320 *\207" [#1=#:--cl-ebrowse-tree-obarray-as-alist-- ebrowse--displayed-class cl-struct-ebrowse-ts-tags subs arg x #[nil "\306H	>\204\307\310\311\312#\210\313H\314\211\n:\203[\n@\211\306H	>\204,\307\310\315\312#\210\316H\306H
>\204<\307\310\317\320#\210\306H	>\204J\307\310\315\312#\210\316H\316HB\fB\nA\211\202\f\237+\207" [ebrowse--displayed-class cl-struct-ebrowse-ts-tags #2=#:--cl-var-- s #3=#:--cl-var-- cl-struct-ebrowse-cs-tags 0 error #4="%s accessing a non-%s" ebrowse-ts-subclasses ebrowse-ts 2 nil ebrowse-ts-class 1 ebrowse-cs-name ebrowse-cs] 5] 0 error #4# ebrowse-ts-subclasses ebrowse-ts 2 "No derived classes" ebrowse-switch-member-buffer-to-other-class "Goto derived class: " ebrowse-redisplay-member-buffer ebrowse--accessor ebrowse--member-list] 5 (#$ . 152545) "P"])
(defalias 'ebrowse-displaying-functions #[nil "\301=\207" [ebrowse--accessor ebrowse-ts-member-functions] 2])
(defalias 'ebrowse-displaying-variables #[nil "\301=\207" [ebrowse--accessor ebrowse-ts-member-variables] 2])
(defalias 'ebrowse-displaying-static-functions #[nil "\300\207" [nil] 1])
(defalias 'ebrowse-displaying-static-variables #[nil "\300\207" [nil] 1])
(defalias 'ebrowse-displaying-types #[nil "\301=\207" [ebrowse--accessor ebrowse-ts-types] 2])
(defalias 'ebrowse-displaying-friends #[nil "\301=\207" [ebrowse--accessor ebrowse-ts-friends] 2])
#@43 Object menu for the member buffer itself.
(defvar ebrowse-member-buffer-object-menu nil (#$ . 154241))
(easy-menu-do-define 'ebrowse-member-buffer-object-menu ebrowse-member-mode-map "Object menu for the member buffer itself." '("Members" ("Members List" ["Functions" ebrowse-display-function-member-list :help "Show the list of member functions" :style radio :selected (eq ebrowse--accessor 'ebrowse-ts-member-functions) :active t] ["Variables" ebrowse-display-variables-member-list :help "Show the list of member variables" :style radio :selected (eq ebrowse--accessor 'ebrowse-ts-member-variables) :active t] ["Static Functions" ebrowse-display-static-functions-member-list :help "Show the list of static member functions" :style radio :selected (eq ebrowse--accessor 'ebrowse-ts-static-functions) :active t] ["Static Variables" ebrowse-display-static-variables-member-list :help "Show the list of static member variables" :style radio :selected (eq ebrowse--accessor 'ebrowse-ts-static-variables) :active t] ["Types" ebrowse-display-types-member-list :help "Show the list of nested types" :style radio :selected (eq ebrowse--accessor 'ebrowse-ts-types) :active t] ["Friends/Defines" ebrowse-display-friends-member-list :help "Show the list of friends or defines" :style radio :selected (eq ebrowse--accessor 'ebrowse-ts-friends) :active t]) ("Class" ["Up" ebrowse-switch-member-buffer-to-base-class :help "Show the base class of this class" :active t] ["Down" ebrowse-switch-member-buffer-to-derived-class :help "Show a derived class class of this class" :active t] ["Next Sibling" ebrowse-switch-member-buffer-to-next-sibling-class :help "Show the next sibling class" :active t] ["Previous Sibling" ebrowse-switch-member-buffer-to-previous-sibling-class :help "Show the previous sibling class" :active t]) ("Member" ["Show in Tree" ebrowse-show-displayed-class-in-tree :help "Show this class in the class tree" :active t] ["Find in this Class" ebrowse-goto-visible-member :help "Search for a member of this class" :active t] ["Find in Tree" ebrowse-goto-visible-member/all-member-lists :help "Search for a member in any class" :active t]) ("Display" ["Inherited" ebrowse-toggle-base-class-display :help "Toggle display of inherited members" :style toggle :selected ebrowse--show-inherited-flag :active t] ["Attributes" ebrowse-toggle-member-attributes-display :help "Show member attributes" :style toggle :selected ebrowse--attributes-flag :active t] ["Long Display" ebrowse-toggle-long-short-display :help "Toggle the member display format" :style toggle :selected ebrowse--long-display-flag :active t] ["Column Width" ebrowse-set-member-buffer-column-width :help "Set the display's column width" :active t]) ("Filter" ["Public" ebrowse-toggle-public-member-filter :help "Toggle the visibility of public members" :style toggle :selected (not (aref ebrowse--filters 0)) :active t] ["Protected" ebrowse-toggle-protected-member-filter :help "Toggle the visibility of protected members" :style toggle :selected (not (aref ebrowse--filters 1)) :active t] ["Private" ebrowse-toggle-private-member-filter :help "Toggle the visibility of private members" :style toggle :selected (not (aref ebrowse--filters 2)) :active t] ["Virtual" ebrowse-toggle-virtual-member-filter :help "Toggle the visibility of virtual members" :style toggle :selected ebrowse--virtual-display-flag :active t] ["Inline" ebrowse-toggle-inline-member-filter :help "Toggle the visibility of inline members" :style toggle :selected ebrowse--inline-display-flag :active t] ["Const" ebrowse-toggle-const-member-filter :help "Toggle the visibility of const members" :style toggle :selected ebrowse--const-display-flag :active t] ["Pure" ebrowse-toggle-pure-member-filter :help "Toggle the visibility of pure virtual members" :style toggle :selected ebrowse--pure-display-flag :active t] "-----------------" ["Show all" ebrowse-remove-all-member-filters :help "Remove any display filters" :active t]) ("Buffer" ["Tree" ebrowse-pop-from-member-to-tree-buffer :help "Pop to the class tree buffer" :active t] ["Next Member Buffer" ebrowse-switch-to-next-member-buffer :help "Switch to the next member buffer of this class tree" :active t] ["Freeze" ebrowse-freeze-member-buffer :help "Freeze (do not reuse) this member buffer" :active t])))
#@47 Value is non-nil if point is on a class name.
(defalias 'ebrowse-on-class-name #[nil "\300`\301\"\302=\207" [get-text-property ebrowse-what class-name] 3 (#$ . 158549)])
#@48 Value is non-nil if point is on a member name.
(defalias 'ebrowse-on-member-name #[nil "\300`\301\"\302=\207" [get-text-property ebrowse-what member-name] 3 (#$ . 158725)])
#@47 Object menu for class names in member buffer.
(defvar ebrowse-member-class-name-object-menu nil (#$ . 158904))
(easy-menu-do-define 'ebrowse-member-class-name-object-menu ebrowse-member-mode-map "Object menu for class names in member buffer." '("Class" ["Find" ebrowse-find-member-definition :help "Find this class in the source files" :active (eq (get-text-property (point) 'ebrowse-what) 'class-name)] ["View" ebrowse-view-member-definition :help "View this class in the source files" :active (eq (get-text-property (point) 'ebrowse-what) 'class-name)]))
#@30 Object menu for member names
(defvar ebrowse-member-name-object-menu nil (#$ . 159467))
(easy-menu-do-define 'ebrowse-member-name-object-menu ebrowse-member-mode-map "Object menu for member names" '("Ebrowse" ["Find Definition" ebrowse-find-member-definition :help "Find this member's definition in the source files" :active (ebrowse-on-member-name)] ["Find Declaration" ebrowse-find-member-declaration :help "Find this member's declaration in the source files" :active (ebrowse-on-member-name)] ["View Definition" ebrowse-view-member-definition :help "View this member's definition in the source files" :active (ebrowse-on-member-name)] ["View Declaration" ebrowse-view-member-declaration :help "View this member's declaration in the source files" :active (ebrowse-on-member-name)]))
#@70 Handle `mouse-3' events in member buffers.
EVENT is the mouse event.
(defalias 'ebrowse-member-mouse-3 #[(event) "\306!\210\211:\203\3078\250\203\3078\202\310)\211\307=\203&\311 \202p	\310=\203o\312\313!\314\n8\206H\nA@:\203E\nA@@\202H\nA@)\315\"\211\316=\203Y\317\f\"\202k\320=\203f\317
\"\202k\317\")\202p\321)\207" [event #1=#:val position #2=#:val ebrowse-member-name-object-menu ebrowse-member-class-name-object-menu mouse-set-point 2 1 ebrowse-find-member-definition get-text-property event-start 5 ebrowse-what member-name ebrowse-popup-menu class-name nil ebrowse-member-buffer-object-menu] 4 (#$ . 160258) "e"])
#@70 Handle `mouse-2' events in member buffers.
EVENT is the mouse event.
(defalias 'ebrowse-member-mouse-2 #[(event) "\304!\210\211:\203\3058\250\203\3058\202\306)\211\305=\203&\307 \202Z	\306=\203Y\310\311!\312\n8\206H\nA@:\203E\nA@@\202H\nA@)\313\"\211\314=\205U\315\316!)\202Z\317)\207" [event #1=#:val position #2=#:val mouse-set-point 2 1 ebrowse-find-member-definition get-text-property event-start 5 ebrowse-what member-name ebrowse-view-member-definition 0 nil] 4 (#$ . 160917) "e"])
#@440 Return information about a member in a class tree.
TREE-HEADER is the header structure of the class tree.
NAME is the name of the member.
Value is an alist of elements (CLASS-NAME . (CLASS LIST NAME)),
where each element describes one occurrence of member NAME in the tree.
CLASS-NAME is the qualified name of the class in which the
member was found.  The CDR of the acons is described in function
`ebrowse-class/index/member-for-member'.
(defalias 'ebrowse-class-alist-for-member #[(tree-header name) "\306!\307\211\f\205\255\310\f\"\307\211\203\251@\211@\n>\204\240
@\311H>\2043\312\313\314\315#\210
@\316H\211\311H>\204H\312\313\317\320#\210\321H\203|\311H>\204_\312\313\317\320#\210\321H\322\311H>\204t\312\313\323\320#\210\316HQ\202\220\311H>\204\214\312\313\323\320#\210\316H)
	BB\266\203
@\nBA\211\204\307	*+\207" [tree-header alist known-classes table name info ebrowse-member-table nil gethash 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-scope ebrowse-cs 2 "::" ebrowse-cs-name --dolist-tail-- cl-struct-ebrowse-ts-tags class cl-struct-ebrowse-cs-tags] 7 (#$ . 161435)])
#@280 Choose a class tree to use.
If there's more than one class tree loaded, let the user choose
the one he wants.  Value is (TREE HEADER BUFFER), with TREE being
the class tree, HEADER the header structure of the tree, and BUFFER
being the tree or member buffer containing the tree.
(defalias 'ebrowse-choose-tree #[nil "\301 \211\205\302\303\"\302\304\"E)\207" [buffer ebrowse-choose-from-browser-buffers buffer-local-value ebrowse--tree ebrowse--header] 5 (#$ . 162610)])
#@236 Read a C++ identifier from the minibuffer.
HEADER is the `ebrowse-hs' structure of the class tree.
Prompt with PROMPT.  Insert into the minibuffer a C++ identifier read
from point as default.  Value is a list (CLASS-NAME MEMBER-NAME).
(defalias 'ebrowse-tags-read-name #[(header prompt) "\212\306!\307 \211@\nA@\211\204\310\311!\210	\203^\312\313	\314\211\f%)\315	\"\316	\"\204V\317\320!\203R\321	\322!#@\206M\310\323!\202V\310\324!\210*D\202e\325\f\"D-\207" [header members #1=#:--cl-var-- class-name member-name completion-ignore-case ebrowse-member-table ebrowse-tags-read-member+class-name error "No member name at point" t completing-read nil try-completion gethash y-or-n-p "No exact match found.  Try substrings? " ebrowse-list-of-matching-members regexp-quote "Sorry, nothing found" "Canceled" read-from-minibuffer prompt name completion-result] 7 (#$ . 163093)])
#@205 Read a C++ identifier from point.
Value is (CLASS-NAME MEMBER-NAME).
CLASS-NAME is the name of the class if the identifier was qualified.
It is nil otherwise.
MEMBER-NAME is the name of the member found.
(defalias 'ebrowse-tags-read-member+class-name #[nil "\212\303\304x\210`\303\304w\210`{\304\211	,D\207" [start name class "a-zA-Z0-9_" nil] 3 (#$ . 164008)])
#@283 Read a class name for a member from the minibuffer.
TREE is the class tree we operate on.
HEADER is its header structure.
NAME is the name of the member.
INITIAL-CLASS-NAME is an initial class name to insert in the minibuffer.
Value is a list (TREE ACCESSOR MEMBER) for the member.
(defalias 'ebrowse-tags-choose-class #[(_tree header name initial-class-name) "\306	\"\206\307\310	\"\311\n\211A@)\204\n@A\202-\312
B\313\314\315\n\316\311%\n\"A*\207" [header name alist completion-ignore-case x unread-command-events ebrowse-class-alist-for-member error "No classes with member `%s' found" t 63 assoc completing-read "In class: " nil initial-class-name] 8 (#$ . 164381)])
#@503 If VIEW is t, view, else find an occurrence of MEMBER-NAME.

If DEFINITION is t, find or view the member definition else its
declaration.  This function reads the member's name from the
current buffer like FIND-TAG.  It then prepares a completion list
of all classes containing a member with the given name and lets
the user choose the class to use.  As a last step, a tags search
is performed that positions point on the member declaration or
definition.

(fn PREFIX &key VIEW DEFINITION MEMBER-NAME)
(defalias 'ebrowse-tags-view/find-member-decl/defn #[(prefix &rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\f\203>\f@\311>\203'\fAA\211\202\312>A@\2035\313\211\202\314\315\f@\"\210\202)\316 \211@
A@ \317
8!\204Y\314\320!\210\321 \"\313#$\313%$\204\221\322 	\203v\323\202w\324\325\n\203\200\326\202\201\327\330R\"\211&@#&A@$)\331 $#$%\332\"%\"\210\333'	\n% \334\335!\"&\210\332\321 %\336#.\207" [#1# view definition member-name #2=#:--cl-keys-- #3=#:--cl-var-- :view :definition :member-name (:view :definition :member-name :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:view :definition :member-name)" ebrowse-choose-tree 2 "No class tree" point-marker ebrowse-tags-read-name "View" "Find" " member " "definition" "declaration" ": " ebrowse-tags-choose-class ebrowse-push-position ebrowse-view/find-member-declaration/definition buffer-local-value ebrowse--tags-file-name t tree header tree-buffer marker class-name name info #4=#:--cl-var-- prefix] 10 (#$ . 165071)])
#@38 View declaration of member at point.
(defalias 'ebrowse-tags-view-declaration #[nil "\300\301\302\303\304\305%\207" [ebrowse-tags-view/find-member-decl/defn 0 :view t :definition nil] 6 (#$ . 166641) nil])
#@38 Find declaration of member at point.
(defalias 'ebrowse-tags-find-declaration #[nil "\300\301\302\303\304\303%\207" [ebrowse-tags-view/find-member-decl/defn 0 :view nil :definition] 6 (#$ . 166853) nil])
#@37 View definition of member at point.
(defalias 'ebrowse-tags-view-definition #[nil "\300\301\302\303\304\303%\207" [ebrowse-tags-view/find-member-decl/defn 0 :view t :definition] 6 (#$ . 167063) nil])
#@37 Find definition of member at point.
(defalias 'ebrowse-tags-find-definition #[nil "\300\301\302\303\304\305%\207" [ebrowse-tags-view/find-member-decl/defn 0 :view nil :definition t] 6 (#$ . 167269) nil])
#@54 View declaration of member at point in other window.
(defalias 'ebrowse-tags-view-declaration-other-window #[nil "\300\301\302\303\304\305%\207" [ebrowse-tags-view/find-member-decl/defn 4 :view t :definition nil] 6 (#$ . 167479) nil])
#@54 Find declaration of member at point in other window.
(defalias 'ebrowse-tags-find-declaration-other-window #[nil "\300\301\302\303\304\303%\207" [ebrowse-tags-view/find-member-decl/defn 4 :view nil :definition] 6 (#$ . 167720) nil])
#@53 View definition of member at point in other window.
(defalias 'ebrowse-tags-view-definition-other-window #[nil "\300\301\302\303\304\303%\207" [ebrowse-tags-view/find-member-decl/defn 4 :view t :definition] 6 (#$ . 167959) nil])
#@53 Find definition of member at point in other window.
(defalias 'ebrowse-tags-find-definition-other-window #[nil "\300\301\302\303\304\305%\207" [ebrowse-tags-view/find-member-decl/defn 4 :view nil :definition t] 6 (#$ . 168194) nil])
#@52 View definition of member at point in other frame.
(defalias 'ebrowse-tags-view-declaration-other-frame #[nil "\300\301\302\303\304\305%\207" [ebrowse-tags-view/find-member-decl/defn 5 :view t :definition nil] 6 (#$ . 168433) nil])
#@52 Find definition of member at point in other frame.
(defalias 'ebrowse-tags-find-declaration-other-frame #[nil "\300\301\302\303\304\303%\207" [ebrowse-tags-view/find-member-decl/defn 5 :view nil :definition] 6 (#$ . 168671) nil])
#@52 View definition of member at point in other frame.
(defalias 'ebrowse-tags-view-definition-other-frame #[nil "\300\301\302\303\304\303%\207" [ebrowse-tags-view/find-member-decl/defn 5 :view t :definition] 6 (#$ . 168907) nil])
#@52 Find definition of member at point in other frame.
(defalias 'ebrowse-tags-find-definition-other-frame #[nil "\300\301\302\303\304\305%\207" [ebrowse-tags-view/find-member-decl/defn 5 :view nil :definition t] 6 (#$ . 169140) nil])
#@137 Select or create member buffer.
TREE-BUFFER specifies the tree to use.  INFO describes the member.
It is a list (TREE ACCESSOR MEMBER).
(defalias 'ebrowse-tags-select/create-member-buffer #[(tree-buffer info) "\306!\211\204\nq\210\307\310\211A@)\311@#!\210\2023\307	!\210@\211A@)\211
!\312 \210\313AA@\314H>\204F\315\316\317\320#\210AA@\321H!)\207" [ebrowse-member-buffer-name buffer tree-buffer info x ebrowse--displayed-class get-buffer switch-to-buffer ebrowse-display-member-buffer nil ebrowse-redisplay-member-buffer ebrowse-move-point-to-member 0 error "%s accessing a non-%s" ebrowse-ms-name ebrowse-ms 1 ebrowse--accessor ebrowse--member-list cl-struct-ebrowse-ms-tags] 6 (#$ . 169378)])
#@139 Display a member buffer for a member.
FIX-NAME non-nil means display the buffer for that member.
Otherwise read a member name from point.
(defalias 'ebrowse-tags-display-member-buffer #[(&optional fix-name) "\306 \211@A@\3078	\204\310\311!\210\312 \313\313\2047\314\n\315\"\211@A@)\316	\n
$\317\f\"\210\320\".\207" [#1=#:--cl-var-- tree header tree-buffer marker class-name ebrowse-choose-tree 2 error "No class tree" point-marker nil ebrowse-tags-read-name "Find member list of: " ebrowse-tags-choose-class ebrowse-push-position ebrowse-tags-select/create-member-buffer fix-name name info #2=#:--cl-var--] 6 (#$ . 170102) nil])
#@157 Return a list of members in table MEMBERS matching REGEXP or NAME.
Both NAME and REGEXP may be nil in which case exact or regexp matches
are not performed.
(defalias 'ebrowse-list-of-matching-members #[(members regexp &optional name) "\304	\204\n\n\203\305\306\"\210)\207" [list name regexp members nil maphash #[(member-name _info) "\203\n	\230\204\n\205\304\n	\"\205	B\211\207" [name member-name regexp list string-match] 3]] 3 (#$ . 170774)])
#@71 Display a list of members matching a regexp read from the minibuffer.
(defalias 'ebrowse-tags-apropos #[nil "\306 \206\307\310!\311\312\"\313	!\314\315\316!
r\317\320!q\210p\321 \210\314\211\322\211\322 \323 \210\324\303!\210+\211!\211\"q\210\323 \210\325\f\326\261\210\327\n\f\"#\314$#:\203\221#@$\330$\n\"%\314&%:\203\207%@&\331&!\210%A\211%\202p*#A\211#\202[*\314\332!!\210.\207" [buffer header members temp-buffer-setup-hook regexp default-directory ebrowse-choose-from-browser-buffers error "No tree buffer" buffer-local-value ebrowse--header ebrowse-member-table nil read-from-minibuffer "List members matching regexp: " get-buffer-create "*Apropos Members*" kill-all-local-variables t erase-buffer run-hooks "Members matching `" "'\n\n" ebrowse-list-of-matching-members gethash ebrowse-draw-file-member-info internal-temp-output-buffer-show #1=#:old-dir buffer-read-only buffer-file-name buffer-undo-list inhibit-modification-hooks inhibit-read-only #2=#:buf standard-output #3=#:--cl-var-- s #4=#:--cl-var-- info] 4 (#$ . 171243) nil])
#@87 Display a list of members found in a file.
The file name is read from the minibuffer.
(defalias 'ebrowse-tags-list-members-in-file #[nil "\306 \206\307\310!rq\210\311 )\312\313	\314\315$\316\317\"\314\320!r\321\322\n\323Q!q\210p\324 \210\314\211\315\211\315 \325 \210\326\304!\210+\211!\211\"q\210\327\330
\"\331!!\210.	\207" [buffer files file header temp-buffer-setup-hook members ebrowse-choose-from-browser-buffers error "No tree buffer" ebrowse-files-table completing-read "List members in file: " nil t buffer-local-value ebrowse--header ebrowse-member-table get-buffer-create "*Members in file " "*" kill-all-local-variables erase-buffer run-hooks maphash #[(_member-name list) "\306\211\306	:\203\304	@\211AA@\n@\307H
>\204$\310\311\312\313#\210\n@\314H\307H>\2048\310\311\315\316#\210\317H\204V\f\307H>\204M\310\311\320\321#\210\f\317H\230\204n\307H>\204g\310\311\315\316#\210\317H\230\203s\322\n\323\"\210\307H>\204\202\310\311\324\316#\210\325H\204\240\f\307H>\204\227\310\311\326\321#\210\f\327H\230\204\270\307H>\204\261\310\311\324\316#\210\325H\230\203\275\322\n\330\"\210	A\211\202	,\306\207" [list #1=#:--cl-var-- info member class cl-struct-ebrowse-ts-tags nil 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-ms-file ebrowse-ms 4 ebrowse-cs-file ebrowse-cs ebrowse-draw-file-member-info "decl." ebrowse-ms-definition-file 8 ebrowse-cs-source-file 7 "defn." cl-struct-ebrowse-ms-tags cl-struct-ebrowse-cs-tags file] 6] internal-temp-output-buffer-show default-directory #2=#:old-dir buffer-read-only buffer-file-name buffer-undo-list inhibit-modification-hooks inhibit-read-only #3=#:buf standard-output] 6 (#$ . 172340) nil])
#@323 Display a line in the members info buffer.
INFO describes the member.  It has the form (TREE ACCESSOR MEMBER).
TREE is the class of the member to display.
ACCESSOR is the accessor symbol of its member list.
MEMBER is the member structure.
KIND is an additional string printed in the buffer.

(fn INFO &optional (KIND ""))
(defalias 'ebrowse-draw-file-member-info #[(info &rest #1=#:--cl-rest--) "\203\f\211A@\202
\306\203\307\310\311\312G\\D\"\210\n@\211\211\313H\f>\204/\314\315\316\317#\210\320H\313H
>\204?\314\315\321\322#\210\313H\f>\204M\314\315\316\317#\210\320H\320H)\230)\211*\204\220\313H\f>\204j\314\315\316\317#\210\320H\313H+>\204{\314\315\323\324#\210\313H\f>\204\211\314\315\316\317#\210\320H\320Hc\210\325\nAA@\313H,>\204\243\314\315\326\327#\210\nAA@\320H\261\210\330j\210	c\210\331j\210\n\211-A@)\211.\332=\203\310\333\202	.\334=\203\323\335\202	.\336=\203\336\337\202	.\340=\203\351\341\202	.\342=\203\375*\203\371\343\202	\344\202	.\345=\203\346\202	\347)\350\261+\207" [#1# kind info tree cl-struct-ebrowse-ts-tags cl-struct-ebrowse-bs-tags "" signal wrong-number-of-arguments ebrowse-draw-file-member-info 2 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-bs-name ebrowse-bs ebrowse-cs-name ebrowse-cs "::" ebrowse-ms-name ebrowse-ms 40 50 ebrowse-ts-member-functions "member function" ebrowse-ts-member-variables "member variable" ebrowse-ts-static-functions "static function" ebrowse-ts-static-variables "static variable" ebrowse-ts-friends "define" "friend" ebrowse-ts-types "type" "unknown" "\n" ebrowse-globals-name globals-p cl-struct-ebrowse-cs-tags cl-struct-ebrowse-ms-tags x #2=#:val] 6 (#$ . 174096)])
#@49 Text inserted by the last completion operation.
(defvar ebrowse-last-completion nil (#$ . 175815))
#@63 String which was the basis for the last completion operation.
(defvar ebrowse-last-completion-start nil (#$ . 175920))
#@71 Buffer position at which the last completion operation was initiated.
(defvar ebrowse-last-completion-location nil (#$ . 176045))
#@43 Member used in last completion operation.
(defvar ebrowse-last-completion-obarray nil (#$ . 176181))
(byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\207" [make-variable-buffer-local ebrowse-last-completion-obarray ebrowse-last-completion-location ebrowse-last-completion ebrowse-last-completion-start] 2)
#@136 Return a hash table containing all members of a tree.
If there's only one tree loaded, use that.  Otherwise let the
use choose a tree.
(defalias 'ebrowse-some-member-table #[nil "\304 \211@\203\211A@)\204@\202\305 \206\306\307!\310\311\n\"\312!+\207" [buffers x buffer header ebrowse-known-class-trees-buffer-list ebrowse-electric-choose-tree error "No tree buffer" buffer-local-value ebrowse--header ebrowse-member-table] 4 (#$ . 176506)])
#@113 Return the item following STRING in LIST.
If STRING is the last element, return the first element as successor.
(defalias 'ebrowse-cyclic-successor-in-string-list #[(string list) "\302	\303#T	8\206
	@\207" [string list ebrowse-position string=] 4 (#$ . 176969)])
#@223 Perform completion on the C++ symbol preceding point.
A second call of this function without changing point inserts the next match.
A call with prefix PREFIX reads the symbol to insert from the minibuffer with
completion.
(defalias 'ebrowse-tags-complete-symbol #[(prefix) "`\212\306\307x\210`)\211{\307\211
\2034\310 \311\312\307\313\n%\211\2050\307	|\210\fc*\202\242`=\203o\314\"\315\"\211\204R\316\317!\202\242\f\n\230\203^\316\320!\202\242	|\210\fc\210\f`\211\202\242\310 \314\n\307#@\211\313=\206\241\f\204\214\316\321\n\"\202\241	|\210\fc\210`\n\f\211*-\207" [end begin pattern list completion prefix "a-zA-Z_0-9" nil ebrowse-some-member-table completing-read "Insert member: " t all-completions ebrowse-cyclic-successor-in-string-list error "No completion" "No further completion" "Can't find completion for `%s'" members ebrowse-last-completion-location ebrowse-last-completion-start ebrowse-last-completion-obarray ebrowse-last-completion] 7 (#$ . 177241) "P"])
#@120 Form for `ebrowse-loop-continue'.
Evaluated for each file in the tree.  If it returns nil, proceed
with the next file.
(defvar ebrowse-tags-loop-form nil (#$ . 178277))
#@34 A list of files to be processed.
(defvar ebrowse-tags-next-file-list nil (#$ . 178452))
#@55 The path relative to which files have to be searched.
(defvar ebrowse-tags-next-file-path nil (#$ . 178546))
#@48 The last file visited via `ebrowse-tags-loop'.
(defvar ebrowse-tags-loop-last-file nil (#$ . 178661))
#@229 Select next file among files in current tag table.
Non-nil argument INITIALIZE (prefix arg, if interactive) initializes
to the beginning of the list of files in the tag table.
TREE-BUFFER specifies the class tree we operate on.
(defalias 'ebrowse-tags-next-file #[(&optional initialize tree-buffer) "\203	\206\n\306 r\nq\210\307\310 !\311\312
!*\204$\313\314!\210\f\203;\315\f!\211\203:\316\n!\204:\317\n!\210)\320@\"\315!?\205M\210A\321!)\207" [initialize tree-buffer buffer ebrowse-tags-next-file-list ebrowse-tags-loop-last-file ebrowse--tags-file-name ebrowse-choose-from-browser-buffers ebrowse-files-list ebrowse-marked-classes-p nil file-name-directory error "All files processed" get-file-buffer buffer-modified-p kill-buffer expand-file-name find-file ebrowse-tags-next-file-path file] 4 (#$ . 178770) "P"])
#@174 Repeat last operation on files in tree.
FIRST-TIME non-nil means this is not a repetition, but the first time.
TREE-BUFFER if indirectly specifies which files to loop over.
(defalias 'ebrowse-tags-loop-continue #[(&optional first-time tree-buffer) "\203\f\304	\"\210eb\210\305\n!?\205!\304 \210\306\307\"\210eb\210\202\f\207" [first-time tree-buffer ebrowse-tags-loop-form buffer-file-name ebrowse-tags-next-file eval message "Scanning file `%s'..."] 3 (#$ . 179625) nil])
#@148 Search for REGEXP in all files in a tree.
If marked classes exist, process marked classes, only.
If regular expression is nil, repeat last search.
(defalias 'ebrowse-tags-search #[(regexp) "\302\230\203	@\303=\203\304 \207\303\305\306F\304\307!\207" [regexp ebrowse-tags-loop-form "" re-search-forward ebrowse-tags-loop-continue nil t first-time] 4 (#$ . 180111) "sTree search (regexp): "])
#@113 Query replace FROM with TO in all files of a class tree.
With prefix arg, process files of marked classes only.
(defalias 'ebrowse-tags-query-replace #[(from to) "\303\304\305\306\307FD\310\311	\307\211\306\257DE\312\313!\207" [from to ebrowse-tags-loop-form and save-excursion re-search-forward nil t not perform-replace ebrowse-tags-loop-continue first-time] 9 (#$ . 180516) "sTree query replace (regexp): \nsTree query replace %s by: "])
#@250 Search for call sites of a member.
If FIX-NAME is specified, search uses of that member.
Otherwise, read a member name from the minibuffer.
Searches in all files mentioned in a class tree for something that
looks like a function call to the member.
(defalias 'ebrowse-tags-search-member-use #[(&optional fix-name) "\306 \211@A@\3078	\204\310\311!\210\f\312\211\211\2043\313\n\314\"\211@A@)\315\316Q\317
\312\320F\321\322\".\207" [#1=#:--cl-var-- tree header tree-buffer fix-name regexp ebrowse-choose-tree 2 error "No class tree" nil ebrowse-tags-read-name "Find calls of: " "\\<" "[ 	]*(" re-search-forward t ebrowse-tags-loop-continue first-time class-name name #2=#:--cl-var-- ebrowse-tags-loop-form] 5 (#$ . 180968) nil])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-position-file-name compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-position-file-name (or (and (memq (aref cl-x 0) cl-struct-ebrowse-position-tags)) (error "%s accessing a non-%s" 'ebrowse-position-file-name 'ebrowse-position)) (aref cl-x 1)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-position-file-name #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-position-tags 0 error "%s accessing a non-%s" ebrowse-position-file-name ebrowse-position 1] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-position-point compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-position-point (or (and (memq (aref cl-x 0) cl-struct-ebrowse-position-tags)) (error "%s accessing a non-%s" 'ebrowse-position-point 'ebrowse-position)) (aref cl-x 2)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-position-point #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-position-tags 0 error "%s accessing a non-%s" ebrowse-position-point ebrowse-position 2] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-position-target compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-position-target (or (and (memq (aref cl-x 0) cl-struct-ebrowse-position-tags)) (error "%s accessing a non-%s" 'ebrowse-position-target 'ebrowse-position)) (aref cl-x 3)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-position-target #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-position-tags 0 error "%s accessing a non-%s" ebrowse-position-target ebrowse-position 3] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-position-info compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-position-info (or (and (memq (aref cl-x 0) cl-struct-ebrowse-position-tags)) (error "%s accessing a non-%s" 'ebrowse-position-info 'ebrowse-position)) (aref cl-x 4)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-position-info #[(cl-x) "\302H	>\204\303\304\305\306#\210\307H\207" [cl-x cl-struct-ebrowse-position-tags 0 error "%s accessing a non-%s" ebrowse-position-info ebrowse-position 4] 4])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put ebrowse-position-p compiler-macro #[(_cl-whole-arg cl-x) "\301\302\303\304\211\211&\207" [cl-x cl--defsubst-expand (cl-x) (cl-block ebrowse-position-p (and (vectorp cl-x) (>= (length cl-x) 5) (memq (aref cl-x 0) cl-struct-ebrowse-position-tags) t)) nil] 7] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'ebrowse-position-p #[(cl-x) "\302!\205G\303Y\205\304H	>\205\305\207" [cl-x cl-struct-ebrowse-position-tags vectorp 5 0 t] 2])
(defalias 'copy-ebrowse-position #[(x) "\301!\207" [x copy-sequence] 2])
(byte-code "\301\302\303\304#\210\305\301\302\306\307\310!!#\210)\301\207" [file put make-ebrowse-position compiler-macro #[(cl-whole &rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@
\203D
@\312>\203-
AA\211\202\313>A@\203;\314\211\202\315\316
@\"\210\202)\317\320\321\314\314	\n\f&	,\207" [#1# file-name point target info #:--cl-keys-- :file-name :point :target :info (:file-name :point :target :info :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:file-name :point :target :info)" cl--defsubst-expand (file-name point target info) (cl-block make-ebrowse-position (vector 'ebrowse-position file-name point target info)) cl-whole] 11 "\n\n(fn CL-WHOLE &cl-quote &key FILE-NAME POINT TARGET INFO)"] "/builddir/build/BUILD/emacs-24.3/lisp/progmodes/ebrowse.el" compiler-macro-file purecopy file-name-nondirectory] 6)
#@41 

(fn &key FILE-NAME POINT TARGET INFO)
(defalias 'make-ebrowse-position #[(&rest #1=#:--cl-rest--) "\306>A@\307>A@\310>A@\311>A@
\203D
@\312>\203-
AA\211\202\313>A@\203;\314\211\202\315\316
@\"\210\202)\317\320	\n\f%,\207" [#1# file-name point target info #2=#:--cl-keys-- :file-name :point :target :info (:file-name :point :target :info :allow-other-keys) :allow-other-keys nil error "Keyword argument %s not one of (:file-name :point :target :info)" vector ebrowse-position] 7 (#$ . 186248)])
(byte-code "\301C\302\301\303\304#\210\302\301\305\306#\210\302\301\307\310#\210\302\301\311\310#\210\302\312\313\314#\210\302\315\313\314#\210\302\316\313\317#\210\302\320\313\314#\210\302\321\313\314#\210\302\322\313\314#\210\302\323\313\314#\207" [cl-struct-ebrowse-position-tags ebrowse-position put cl-struct-slots ((cl-tag-slot) (file-name) (point) (target) (info)) cl-struct-type (vector t) cl-struct-include nil cl-struct-print make-ebrowse-position side-effect-free t copy-ebrowse-position ebrowse-position-p error-free ebrowse-position-info ebrowse-position-target ebrowse-position-point ebrowse-position-file-name] 4)
#@41 Stack of `ebrowse-position' structured.
(defvar ebrowse-position-stack nil (#$ . 187403))
#@37 Current position in position stack.
(defvar ebrowse-position-index 0 (#$ . 187499))
#@104 Return an identifying string for POSITION.
The string is printed in the electric position list buffer.
(defalias 'ebrowse-position-name #[(position) "\306H	>\204\307\310\311\312#\210\313H\306H	>\204 \307\310\314\312#\210\315H\203*\316\202+\317\n@\306H>\204:\307\310\320\321#\210\n@\322H\306H\f>\204K\307\310\323\324#\210\n@\306H>\204Z\307\310\320\321#\210\n@\322H\322H\325\nAA@\306H
>\204r\307\310\326\327#\210\nAA@\322HR)\207" [position cl-struct-ebrowse-position-tags info cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags cl-struct-ebrowse-ms-tags 0 error "%s accessing a non-%s" ebrowse-position-info ebrowse-position 4 ebrowse-position-target 3 "at " "to " ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-name ebrowse-cs "::" ebrowse-ms-name ebrowse-ms] 7 (#$ . 187590)])
#@87 Position point on POSITION.
If VIEW is non-nil, view the position, otherwise find it.
(defalias 'ebrowse-view/find-position #[(position &optional view) "\204+\304	\305H\n>\204\306\307\310\311#\210	\312H!\210	\305H\n>\204&\306\307\313\311#\210	\314Hb\207\315\216\316B\317	\305H\n>\204@\306\307\310\311#\210	\312H!)\207" [view position cl-struct-ebrowse-position-tags view-mode-hook find-file 0 error #1="%s accessing a non-%s" ebrowse-position-file-name ebrowse-position 1 ebrowse-position-point 2 ((byte-code "\210A\301\207" [view-mode-hook nil] 1)) #[nil "\302H	>\204\303\304\305\306#\210\307Hb\207" [position cl-struct-ebrowse-position-tags 0 error #1# ebrowse-position-point ebrowse-position 2] 4] view-file] 5 (#$ . 188384)])
#@255 Push current position on position stack.
MARKER is the marker to remember as position.
INFO is a list (CLASS FUNC MEMBER) specifying what we jumped to.
TARGET non-nil means we performed a jump.
Positions in buffers that have no file names are not saved.
(defalias 'ebrowse-push-position #[(marker info &optional target) "\306\307!!\2051	G\nZ\211\211\310V\262\203\311	\"\312\313\306\307!!\314\315!\316\f\317
&	B\211)\207" [marker ebrowse-position-stack ebrowse-max-positions too-much target info buffer-file-name marker-buffer 0 butlast make-ebrowse-position :file-name :point marker-position :target :info] 10 (#$ . 189136)])
#@42 Move by INCREMENT in the position stack.
(defalias 'ebrowse-move-in-position-stack #[(increment) "G\304	!\203
\305\306!\210\307\n\\	\"\310\311	#\210\3128!)\207" [ebrowse-position-stack length increment ebrowse-position-index zerop error "No positions remembered" mod message "Position %d of %d " ebrowse-view/find-position] 4 (#$ . 189780)])
#@68 Move backward in the position stack.
Prefix arg ARG says how much.
(defalias 'ebrowse-back-in-position-stack #[(arg) "\301\302]!\207" [arg ebrowse-move-in-position-stack 1] 3 (#$ . 190136) "p"])
#@67 Move forward in the position stack.
Prefix arg ARG says how much.
(defalias 'ebrowse-forward-in-position-stack #[(arg) "\301\302[^!\207" [arg ebrowse-move-in-position-stack -1] 3 (#$ . 190338) "p"])
#@48 Keymap used in electric position stack window.
(defvar ebrowse-electric-position-mode-map nil (#$ . 190544))
#@70 If non-nil, its value is called by `ebrowse-electric-position-mode'.
(defvar ebrowse-electric-position-mode-hook nil (#$ . 190659))
(byte-code "\204\231\303 \303 \211\304\nA@\305\"\210\304	A@\305\"\210\306\n\307	#\210\306\n\310\311#\210\306\n\312\313#\210\306\n\314\315#\210\306\n\316\317#\210\306\n\320\321#\210\306\n\322\321#\210\306\n\323\324#\210\306\n\325\326#\210\306\n\327\330#\210\306\n\331\332#\210\306\n\333\334#\210\306\n\335\332#\210\306\n\336\334#\210\306\n\337\340#\210\306\n\341\342#\210\306\n\343\344#\210\306\n\345\346#\210\306\n\347\350#\210\306\n\351\352#\210\306\n\347\350#\210*\353\354\355\356#\210\353\305\357\360#\210\361\362N\204\263\353\361\362\363\364!#\210\365\300!\204\277\353\300\366\354#\210\317\207" [ebrowse-electric-position-mode-map submap map make-keymap fillarray ebrowse-electric-position-undefined define-key "" "" suspend-frame "" Helper-help "?" Helper-describe-bindings "" nil "" ebrowse-electric-position-quit "q" " " ebrowse-electric-select-position "\f" recenter "" universal-argument "" previous-line "" next-line "p" "n" "v" ebrowse-electric-view-position "" scroll-up-command "v" scroll-down-command "" scroll-other-window ">" end-of-buffer "<" beginning-of-buffer put ebrowse-electric-position-mode mode-class special suppress-keymap t ebrowse-electric-position-mode-hook variable-documentation purecopy "Hook run when entering Electric Position Menu mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp definition-name] 6)
(defvar ebrowse-electric-position-mode-map (make-sparse-keymap))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\305\306!\204\302\306\307\310#\210\300\207" [ebrowse-electric-position-mode-map variable-documentation put purecopy "Keymap for `ebrowse-electric-position-mode'." boundp ebrowse-electric-position-mode-syntax-table definition-name ebrowse-electric-position-mode] 5)
(defvar ebrowse-electric-position-mode-syntax-table (make-syntax-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [ebrowse-electric-position-mode-syntax-table variable-documentation put purecopy "Syntax table for `ebrowse-electric-position-mode'." ebrowse-electric-position-mode-abbrev-table definition-name ebrowse-electric-position-mode] 5)
(defvar ebrowse-electric-position-mode-abbrev-table (progn (define-abbrev-table 'ebrowse-electric-position-mode-abbrev-table nil) ebrowse-electric-position-mode-abbrev-table))
(byte-code "\300\301N\204\302\300\301\303\304!#\210\302\305\306\307#\207" [ebrowse-electric-position-mode-abbrev-table variable-documentation put purecopy "Abbrev table for `ebrowse-electric-position-mode'." ebrowse-electric-position-mode derived-mode-parent nil] 5)
#@129 Mode for electric position buffers.
Runs the hook `ebrowse-electric-position-mode-hook'.

\{ebrowse-electric-position-mode-map}
(defalias 'ebrowse-electric-position-mode #[nil "\306\300!\210\307\310 \210\311\312\313!\210\314\f!\210
\312\302>\203/\315!\302>\316\240\210\306\317!\210\320\307\211)\321\322!\207" [delay-mode-hooks major-mode mode-name ebrowse-electric-position-mode-map ebrowse-electric-position-mode-syntax-table ebrowse-electric-position-mode-abbrev-table make-local-variable t kill-all-local-variables ebrowse-electric-position-mode "Electric Position Menu" use-local-map set-syntax-table copy-sequence "Positions" Helper-return-blurb "return to buffer editing" run-mode-hooks ebrowse-electric-position-mode-hook local-abbrev-table mode-line-buffer-identification mode-line-format truncate-lines buffer-read-only] 3 (#$ . 193456) nil])
#@42 Display positions in buffer *Positions*.
(defalias 'ebrowse-draw-position-buffer #[nil "\305\306!q\210\307\310 \210\311\312\261\210	\307\211\203X@\313\n\314H\f>\204)\315\316\317\320#\210\n\321H!c\210\322j\210\323\n\314H\f>\204A\315\316\324\320#\210\n\325H!c\210\326j\210\327\n!\330\261\210A\211\204*\331\211\207" [buffer-read-only ebrowse-position-stack position --dolist-tail-- cl-struct-ebrowse-position-tags get-buffer-create "*Positions*" nil erase-buffer "File           Point  Description\n" "----           -----  -----------\n" file-name-nondirectory 0 error "%s accessing a non-%s" ebrowse-position-file-name ebrowse-position 1 15 int-to-string ebrowse-position-point 2 22 ebrowse-position-name "\n" t] 6 (#$ . 194337)])
#@61 List positions in the position stack in an electric buffer.
(defalias 'ebrowse-electric-position-menu #[nil "\204\306\307!\210\310\211\211\311 \312\216\311 \313\216\314 \210*\315\316!\317	!\320	!\210\321\216\nq\210\322 \210\323\324\215+\203@\nq\210\325!\210\326\n!+\207" [ebrowse-position-stack window buffer select #1=#:wconfig #2=#:wconfig error "No positions remembered" nil current-window-configuration ((set-window-configuration #1#)) ((set-window-configuration #2#)) ebrowse-draw-position-buffer Electric-pop-up-window "*Positions*" window-buffer shrink-window-if-larger-than-buffer ((byte-code "q\210\301!\210\302\303!\207" [buffer bury-buffer message nil] 2)) ebrowse-electric-position-mode ebrowse-electric-select-position (byte-code "\303\304!\210eb\210\305y\210`db\210\306y\210`\307\211b\210\310\311\312\313\314\n	B%+\207" [goal-column last first message "<<< Press Space to bury the list >>>" 2 -1 0 Electric-command-loop ebrowse-electric-select-position nil t ebrowse-electric-position-looper] 8) ebrowse-electric-find-position kill-buffer] 3 (#$ . 195088) nil])
#@128 Prevent moving point on invalid lines.
Called from `Electric-command-loop'.  See there for the meaning
of STATE and CONDITION.
(defalias 'ebrowse-electric-position-looper #[(state condition) "\203@\302>\204\303@A\"\207`	@W\203eb\210\304y\207`	AV\2055db\210\305y\210\306d!\2055\307\305!\207" [condition state (buffer-read-only end-of-buffer beginning-of-buffer) signal 2 -1 pos-visible-in-window-p recenter] 3 (#$ . 196190)])
#@37 Function called for undefined keys.
(defalias 'ebrowse-electric-position-undefined #[nil "\300\301!\210\302\303!\207" [message "Type C-h for help, ? for commands, q to quit, Space to execute" sit-for 4] 2 (#$ . 196633) nil])
#@35 Leave the electric position list.
(defalias 'ebrowse-electric-position-quit #[nil "\300\301\302\"\207" [throw ebrowse-electric-select-position nil] 3 (#$ . 196864) nil])
#@34 Select a position from the list.
(defalias 'ebrowse-electric-select-position #[nil "\300\301`\"\207" [throw ebrowse-electric-select-position] 3 (#$ . 197040) nil])
#@100 View/find what is described by the line at POINT.
If VIEW is non-nil, view else find source files.
(defalias 'ebrowse-electric-find-position #[(point &optional view) "\304e\"\305Z\306	\n8\")\207" [point index ebrowse-position-stack view count-lines 2 ebrowse-view/find-position] 3 (#$ . 197211)])
#@54 View the position described by the line point is in.
(defalias 'ebrowse-electric-view-position #[nil "\300`\301\"\207" [ebrowse-electric-find-position t] 3 (#$ . 197517) nil])
#@78 Write current buffer as a class tree.
Installed on `local-write-file-hooks'.
(defalias 'ebrowse-write-file-hook-fn #[nil "\300 \210\301\207" [ebrowse-save-tree t] 1 (#$ . 197699)])
#@52 Save current tree in same file it was loaded from.
(defalias 'ebrowse-save-tree #[nil "\302\206	!\207" [buffer-file-name ebrowse--tags-file-name ebrowse-save-tree-as] 2 (#$ . 197886) nil])
#@166 Write the current tree data structure to a file.
Read the file name from the minibuffer if interactive.
Otherwise, FILE-NAME specifies the file to save the tree in.
(defalias 'ebrowse-save-tree-as #[(&optional file-name) "\306\307!\310	!\n\311\216r\211q\210\312 \210\f\313H>\204(\314\315\316\317#\210\f\211\320\321I\210)\322\f!\323\261\210\324\325\"\210\326!\210\327\330\".\207" [standard-output ebrowse--header ebrowse--tree tree header old-standard-output get-buffer-create "*Tree Output" copy-ebrowse-hs ((byte-code "\303!\210\304\305!\210\306 \210	\305\207" [temp-buffer old-standard-output standard-output kill-buffer set-buffer-modified-p nil ebrowse-update-tree-buffer-mode-line] 2)) erase-buffer 0 error "%s accessing a non-%s" ebrowse-hs-member-table ebrowse-hs 4 nil prin1-to-string " " mapc ebrowse-save-class write-file message "Tree written to file `%s'" temp-buffer cl-struct-ebrowse-hs-tags #1=#:v file-name] 5 (#$ . 198085) "FSave tree as: "])
#@45 Write single class CLASS to current buffer.
(defalias 'ebrowse-save-class #[(class) "\306\307\310H	>\204\311\312\313\314#\210\315H\310H\n>\204 \311\312\316\317#\210\310H	>\204.\311\312\313\314#\210\315H\315H\"\210\320c\210\321\310H	>\204G\311\312\313\314#\210\315H!\210\322c\210\323\324\310H	>\204_\311\312\325\314#\210\326H\"\210\327c\210\330\211\203\202
@\321\f!!\210\331c\210
A\211\204o*\332c\210\321\310H	>\204\225\311\312\333\314#\210\334H!\210\335c\207" [class cl-struct-ebrowse-ts-tags cl-struct-ebrowse-cs-tags ebrowse-member-list-accessors func --dolist-tail-- message "%s..." 0 error "%s accessing a non-%s" ebrowse-ts-class ebrowse-ts 1 ebrowse-cs-name ebrowse-cs "[ebrowse-ts " prin1 "(" mapc ebrowse-save-class ebrowse-ts-subclasses 2 ")" nil "\n" "()" ebrowse-ts-mark 10 "]\n"] 7 (#$ . 199074)])
#@38 Display statistics for a class tree.
(defalias 'ebrowse-statistics #[nil "\305 \306\nr\307\310!q\210p\311 \210\306\211\312\211\312\313 \210\314\300!\210+\211\315 \211 @! A@\"\316 8#\317 8$\320 8%q\210\313 \210\321	\206Z\322\323\261\210\324\325!\"\210\324\326\"\"\210\324\327#\"\210\324\330$\"\210\324\331%\".\332!\210-\207" [temp-buffer-setup-hook tree-file default-directory #1=#:old-dir buffer-read-only buffer-file-name nil get-buffer-create "*Tree Statistics*" kill-all-local-variables t erase-buffer run-hooks ebrowse-gather-statistics 2 3 4 "STATISTICS FOR TREE " "unknown" ":\n\n" ebrowse-print-statistics-line "Number of classes:" "Number of member functions:" "Number of member variables:" "Number of static functions:" "Number of static variables:" internal-temp-output-buffer-show buffer-undo-list inhibit-modification-hooks inhibit-read-only #2=#:buf standard-output #3=#:--cl-var-- classes member-functions member-variables static-functions static-variables] 4 (#$ . 199915) nil])
#@116 Print a line in the statistics buffer.
TITLE is the title of the line, VALUE is a number to be printed
after that.
(defalias 'ebrowse-print-statistics-line #[(title value) "c\210\302j\210\303\304	\"c\207" [title value 40 format "%d\n"] 3 (#$ . 200955)])
#@188 Return statistics for a class tree.
The result is a list (NUMBER-OF-CLASSES NUMBER-OF-MEMBER-FUNCTIONS
NUMBER-OF-INSTANCE-VARIABLES NUMBER-OF-STATIC-FUNCTIONS
NUMBER-OF-STATIC-VARIABLES:
(defalias 'ebrowse-gather-statistics #[nil "\306\211\211\211\211\307\310\311\n\"\210)\f\n	\257-\207" [static-variables static-functions member-variables member-functions classes tree 0 nil mapatoms #[(#1=#:var) "\306N\307	!\205f\nT	\310H\f>\204\311\312\313\314#\210	\315HG\\
	\310H\f>\2041\311\312\316\314#\210	\317HG\\	\310H\f>\204G\311\312\320\314#\210	\321HG\\	\310H\f>\204^\311\312\322\314#\210	\323HG\\\211\207" [#1# tree classes member-functions cl-struct-ebrowse-ts-tags member-variables ebrowse-root vectorp 0 error "%s accessing a non-%s" ebrowse-ts-member-functions ebrowse-ts 4 ebrowse-ts-member-variables 3 ebrowse-ts-static-functions 6 ebrowse-ts-static-variables 5 static-functions static-variables] 5] ebrowse--tree-obarray] 5 (#$ . 201217)])
#@30 Keymap for Ebrowse commands.
(defvar ebrowse-global-map nil (#$ . 202198))
#@34 Prefix key for Ebrowse commands.
(defvar ebrowse-global-prefix-key "
" (#$ . 202279))
#@58 Keymap used for `ebrowse-global-prefix' followed by `4'.
(defvar ebrowse-global-submap-4 nil (#$ . 202372))
#@58 Keymap used for `ebrowse-global-prefix' followed by `5'.
(defvar ebrowse-global-submap-5 nil (#$ . 202486))
(byte-code "\204\315\305 \305 \305 \306\307\310#\210\306\311\312#\210\306\313\314#\210\306\315\316#\210\306\317\320#\210\306\321\322#\210\306\323\324#\210\306\325\326#\210\306\327\330#\210\306\331\332#\210\306\333\334#\210\306\335\336#\210\306\337\340#\210\306\341\342#\210\306\343\342#\210\306\344\345#\210\306\346\347#\210\306\350\351#\210\306\352\353#\210\306\354	#\210\306	\341\355#\210\306	\343\355#\210\306	\333\356#\210\306	\344\357#\210\306	\335\360#\210\306\361\n#\210\306\n\341\362#\210\306\n\343\362#\210\306\n\333\363#\210\306\n\344\364#\210\306\n\335\365#\210\306\f#\210\305\207" [ebrowse-global-map ebrowse-global-submap-4 ebrowse-global-submap-5 global-map ebrowse-global-prefix-key make-sparse-keymap define-key "a" ebrowse-tags-apropos "b" ebrowse-pop-to-browser-buffer "-" ebrowse-back-in-position-stack "+" ebrowse-forward-in-position-stack "l" ebrowse-tags-list-members-in-file "m" ebrowse-tags-display-member-buffer "n" ebrowse-tags-next-file "p" ebrowse-electric-position-menu "s" ebrowse-tags-search "u" ebrowse-tags-search-member-use "v" ebrowse-tags-view-definition "V" ebrowse-tags-view-declaration "%" ebrowse-tags-query-replace "." ebrowse-tags-find-definition "f" "F" ebrowse-tags-find-declaration "," ebrowse-tags-loop-continue " " ebrowse-electric-buffer-list "	" ebrowse-tags-complete-symbol "4" ebrowse-tags-find-definition-other-window ebrowse-tags-find-declaration-other-window ebrowse-tags-view-definition-other-window ebrowse-tags-view-declaration-other-window "5" ebrowse-tags-find-definition-other-frame ebrowse-tags-find-declaration-other-frame ebrowse-tags-view-definition-other-frame ebrowse-tags-view-declaration-other-frame] 4)
(defvar electric-buffer-menu-mode-hook nil)
#@59 Hack the electric buffer menu to display browser buffers.
(defalias 'ebrowse-hack-electric-buffer-menu #[nil "\303\304\216\212\303\305b\210\306y\210m?\205<\307\303!\310\n!\204$\311\n!\312\230\203,\305y\210\313\2028`\212\303\210d`T^)|\210)\202
+\207" [non-empty buffer-read-only b nil ((byte-code "\204\303\304!\210\305\306!\307\310 !\210\311\303\207" [non-empty unread-command-events buffer-read-only error "No tree buffers" listify-key-sequence "p" shrink-window-if-larger-than-buffer selected-window t] 2)) 1 2 Buffer-menu-buffer ebrowse-buffer-p buffer-name "*Apropos Members*" t] 3 (#$ . 204344)])
#@52 Select the nth entry in the list by the keys 1..9.
(defalias 'ebrowse-select-1st-to-9nth #[nil "\302ed\"\211\303\304\305 !\\^eb\210	Sy\210\306\307`\"*\207" [maxlin n count-lines 2 string-to-number this-command-keys throw electric-buffer-menu-select] 5 (#$ . 204967) nil])
#@63 Define keys 1..9 to select the 1st to 9nth entry in the list.
(defalias 'ebrowse-install-1-to-9-keys #[nil "\302\303	W\205\304\305 \306\307\\!\310#\210T\211\202*\207" [i --dotimes-limit-- 9 0 define-key current-local-map char-to-string 49 ebrowse-select-1st-to-9nth] 6 (#$ . 205247)])
#@46 Display an electric list of Ebrowse buffers.
(defalias 'ebrowse-electric-buffer-list #[nil "\300\216\301\302\303\"\210\301\302\304\"\210\305\306!)\207" [((byte-code "\300\301\302\"\207" [remove-hook electric-buffer-menu-mode-hook ebrowse-hack-electric-buffer-menu] 3)) add-hook electric-buffer-menu-mode-hook ebrowse-hack-electric-buffer-menu ebrowse-install-1-to-9-keys call-interactively electric-buffer-list] 3 (#$ . 205548) nil])
#@77 Find the member clicked on in another frame.
EVENT is a mouse button event.
(defalias 'ebrowse-mouse-find-member #[(event) "\303!\210\304\211\212\305\304x\210`\305\304w\210\n`{)\306\307\310\304\311\312\313	&*\207" [event name start mouse-set-point nil "a-zA-Z0-9_" ebrowse-tags-view/find-member-decl/defn 5 :view :definition t :member-name] 8 (#$ . 205988) "e"])
#@88 Pop up MENU and perform an action if something was selected.
EVENT is the mouse event.
(defalias 'ebrowse-popup-menu #[(menu event) "\306 r\307\216\310\311	!\211@)!\210\312	\"\313\211\203.\314\f\206!\315
@!\"
A\211\204\f\2055\316\f!-\207" [save-selected-window--state event position menu binding selection internal--before-save-selected-window ((internal--after-save-selected-window save-selected-window--state)) select-window event-start x-popup-menu nil lookup-key vector call-interactively] 5 (#$ . 206363)])
#@44 Object menu for classes in the tree buffer
(defvar ebrowse-tree-buffer-class-object-menu nil (#$ . 206894))
(easy-menu-do-define 'ebrowse-tree-buffer-class-object-menu ebrowse-tree-mode-map "Object menu for classes in the tree buffer" '("Class" ["Functions" ebrowse-tree-command:show-member-functions :help "Display a list of member functions" :active t] ["Variables" ebrowse-tree-command:show-member-variables :help "Display a list of member variables" :active t] ["Static Functions" ebrowse-tree-command:show-static-member-functions :help "Display a list of static member functions" :active t] ["Static Variables" ebrowse-tree-command:show-static-member-variables :help "Display a list of static member variables" :active t] ["Friends/ Defines" ebrowse-tree-command:show-friends :help "Display a list of friends of a class" :active t] ["Types" ebrowse-tree-command:show-types :help "Display a list of types defined in a class" :active t] "-----------------" ["View" ebrowse-view-class-declaration :help "View class declaration" :active (eq (get-text-property (point) 'ebrowse-what) 'class-name)] ["Find" ebrowse-find-class-declaration :help "Find class declaration in file" :active (eq (get-text-property (point) 'ebrowse-what) 'class-name)] "-----------------" ["Mark" ebrowse-toggle-mark-at-point :help "Mark class point is on" :active (eq (get-text-property (point) 'ebrowse-what) 'class-name)] "-----------------" ["Collapse" ebrowse-collapse-branch :help "Collapse subtree under class point is on" :active (eq (get-text-property (point) 'ebrowse-what) 'class-name)] ["Expand" ebrowse-expand-branch :help "Expand subtree under class point is on" :active (eq (get-text-property (point) 'ebrowse-what) 'class-name)]))
#@30 Object menu for tree buffers
(defvar ebrowse-tree-buffer-object-menu nil (#$ . 208622))
(easy-menu-do-define 'ebrowse-tree-buffer-object-menu ebrowse-tree-mode-map "Object menu for tree buffers" '("Ebrowse" ["Filename Display" ebrowse-toggle-file-name-display :help "Toggle display of source files names" :style toggle :selected ebrowse--show-file-names-flag :active t] ["Tree Indentation" ebrowse-set-tree-indentation :help "Set the tree's indentation" :active t] ["Unmark All Classes" ebrowse-mark-all-classes :help "Unmark all classes in the class tree" :active t] ["Expand All" ebrowse-expand-all :help "Expand all subtrees in the class tree" :active t] ["Statistics" ebrowse-statistics :help "Show a buffer with class hierarchy statistics" :active t] ["Find Class" ebrowse-read-class-name-and-go :help "Find a class in the tree" :active t] ["Member Buffer" ebrowse-pop/switch-to-member-buffer-for-same-tree :help "Show a member buffer for this class tree" :active t]))
#@66 Perform mouse actions in tree buffers.
EVENT is the mouse event.
(defalias 'ebrowse-mouse-3-in-tree-buffer #[(event) "\306!\210\307!\310	8\206	A@:\203	A@@\202	A@)\311\n\312\"\211:\203:\3138\250\203:\3138\202;\314)\211\314=\205U\315=\203P\316
\"\202U\316\"+\207" [event position where property #1=#:val ebrowse-tree-buffer-class-object-menu mouse-set-point event-start 5 get-text-property ebrowse-what 2 1 class-name ebrowse-popup-menu ebrowse-tree-buffer-object-menu] 4 (#$ . 209602) "e"])
#@66 Perform mouse actions in tree buffers.
EVENT is the mouse event.
(defalias 'ebrowse-mouse-2-in-tree-buffer #[(event) "\305!\210\306!\307	8\206	A@:\203	A@@\202	A@)\310\n\311\"\211:\203:\3128\250\203:\3128\202;\313)\211\313=\205K\314=\205K\315 +\207" [event position where property #1=#:val mouse-set-point event-start 5 get-text-property ebrowse-what 2 1 class-name ebrowse-tree-command:show-member-functions] 4 (#$ . 210125) "e"])
#@66 Perform mouse actions in tree buffers.
EVENT is the mouse event.
(defalias 'ebrowse-mouse-1-in-tree-buffer #[(event) "\306!\210\307!\310	8\206	A@:\203	A@@\202	A@)\311\n\312\"\211:\203:\3138\250\203:\3138\202;\314)\211\313=\205h\315=\203[\212\316\317w\210\320\321!)\322
?!)\202h\323=\203g\324\314!\202h\317+\207" [event position where property #1=#:val collapsed mouse-set-point event-start 5 get-text-property ebrowse-what 2 1 class-name "^
\n" nil looking-at "
" ebrowse-collapse-fn mark ebrowse-toggle-mark-at-point] 4 (#$ . 210584) "e"])
(provide 'ebrowse)

MMCT - 2023