;ELC   
;;; Compiled by buildd@akateko.buildd on Fri Oct 25 13:49:47 2013
;;; from file /build/buildd/emacs23-23.4+1/debian/build-x/lisp/cvs-status.el
;;; in Emacs version 23.4.1
;;; with all optimizations.

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

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


(byte-code "\300\301!\210\302\303\304\305\306\307\310\311&\207" [require pcvs-util custom-declare-group cvs-status nil "Major mode for browsing `cvs status' output." :group pcl-cvs :prefix "cvs-status-"] 8)
#@21 CVS-Status' keymap.
(defconst cvs-status-mode-map (byte-code "\301\302\303\304\300!\205\n \305\306\307\310F$\207" [cvs-status-mode-map easy-mmode-define-keymap (("n" . next-line) ("p" . previous-line) ("N" . cvs-status-next) ("P" . cvs-status-prev) ("\356" . cvs-status-next) ("\360" . cvs-status-prev) ("t" . cvs-status-cvstrees) ("T" . cvs-status-trees) (">" . cvs-mode-checkout)) nil boundp :group cvs-status :inherit cvs-mode-map] 8) (#$ . 748))
#@43 Hook run at the end of `cvs-status-mode'.
(defvar cvs-status-mode-hook nil (#$ . 1205))
(byte-code "\302B\306\307!\210\301B\310\311!\210\312B\313\314!\210\303B\315\316!\210\304B\317\320!\210\321B\322	\323B\n\324B\f\325BED!\210\326B\327\330!\210\331\332\333\334#\210\335\336N\204W \331\335\336\337\340!#\210\341\342!\204c \331\342\343\332#\210\342B\344\342!\204s \345\342\346 \"\210\342\336N\204\201 \331\342\336\337\347!#\210\341\350!\204\215 \331\350\343\332#\210\350B\344\350!\204\235 \345\350\351 \"\210\350\336N\204\253 \331\350\336\337\352!#\210\331\305\343\332#\210\305B\344\305!\204\305 \345\305\353\305\354\"\210\"\210\305\336N\204\323 \331\305\336\337\355!#\210\331\332\356\354#\207" [current-load-list cvs-status-entry-leader-re cvs-status-tags-leader-re cvs-status-rev-re cvs-status-tag-re cvs-status-mode-abbrev-table (lambda (#1=#:defconst-tmp-var) (defconst cvs-status-tags-leader-re #1#)) "^   Existing Tags:$" (lambda (#2=#:defconst-tmp-var) (defconst cvs-status-entry-leader-re #2#)) "^File:\\s-+\\(?:no file \\)?\\(.*\\S-\\)\\s-+Status: \\(.+\\)$" cvs-status-dir-re (lambda (#3=#:defconst-tmp-var) (defconst cvs-status-dir-re #3#)) "^cvs[.ex]* [a-z]+: Examining \\(.+\\)$" (lambda (#4=#:defconst-tmp-var) (defconst cvs-status-rev-re #4#)) "[0-9][.0-9]*\\.[.0-9]*[0-9]" (lambda (#5=#:defconst-tmp-var) (defconst cvs-status-tag-re #5#)) "[ 	]\\([a-zA-Z][^ 	\n.]*\\)" cvs-status-font-lock-keywords (lambda (#6=#:defconst-tmp-var) (defconst cvs-status-font-lock-keywords #6#)) ((1 'cvs-filename) (2 'cvs-need-action)) ((save-excursion (re-search-forward "^\n" nil 'move) (point)) (progn (re-search-backward cvs-status-tags-leader-re nil t) (forward-line 1)) (0 font-lock-comment-face)) ((save-excursion (re-search-forward "^\n" nil 'move) (point)) (progn (re-search-backward cvs-status-tags-leader-re nil t) (forward-line 1)) (1 font-lock-function-name-face)) cvs-status-font-lock-defaults (lambda (#7=#:defconst-tmp-var) (defconst cvs-status-font-lock-defaults #7#)) (cvs-status-font-lock-keywords t nil nil nil (font-lock-multiline . t)) put cvs-status-mode mode-class special cvs-status-mode-hook variable-documentation purecopy "Hook run when entering CVS-Status mode.\nNo problems result if this variable is not bound.\n`add-hook' automatically binds it.  (This is true for all hook variables.)" boundp cvs-status-mode-map definition-name default-boundp set-default make-sparse-keymap "Keymap for `cvs-status-mode'." cvs-status-mode-syntax-table make-syntax-table "Syntax table for `cvs-status-mode'." define-abbrev-table nil "Abbrev table for `cvs-status-mode'." derived-mode-parent] 6)
#@148 Mode used for cvs status output.

This mode runs the hook `cvs-status-mode-hook', as the final step
during initialization.

\{cvs-status-mode-map}
(defalias 'cvs-status-mode #[nil "\306\300!\210\307\310 \210\311\312\313!\210\314\f!\210\306\315!\210\306\316!\210\317)\320\321!\207" [delay-mode-hooks major-mode mode-name cvs-status-mode-map cvs-status-mode-syntax-table cvs-status-mode-abbrev-table make-local-variable t kill-all-local-variables cvs-status-mode "CVS-Status" use-local-map set-syntax-table font-lock-defaults cvs-minor-wrap-function cvs-status-minor-wrap run-mode-hooks cvs-status-mode-hook local-abbrev-table cvs-status-font-lock-defaults] 2 (#$ . 3841) nil])
(add-to-list 'debug-ignored-errors "^No \\(previous\\|next\\) entry")
#@32 Go to the next COUNT'th entry.
(defalias 'cvs-status-next #[(&optional count) "\204 \303\304W\203 \305[!\207\306	!\203 T\307	\310\311$\2041 \306	!\203, db\207\312\313\314\"\207\304\224b\210p\315\316 !=\205^ \317\320!\205^ \212\307	\310\311\321$)\206P d\322\n\310\311#?\205] \323\324!)\207" [count cvs-status-entry-leader-re endpt 1 0 cvs-status-prev looking-at re-search-forward nil t error "No next %s" "entry" window-buffer selected-window called-interactively-p interactive 2 pos-visible-in-window-p recenter (0)] 5 (#$ . 4606) "p"])
(put 'cvs-status-next 'definition-name 'cvs-status)
#@35 Go to the previous COUNT'th entry
(defalias 'cvs-status-prev #[(&optional count) "\204 \302\303W\203 \304[!\207\305	\306\307$?\205 \310\311\312\"\207" [count cvs-status-entry-leader-re 1 0 cvs-status-next re-search-backward nil t error "No previous %s" "entry"] 5 (#$ . 5212) "p"])
(put 'cvs-status-prev 'definition-name 'cvs-status)
(defalias 'cvs-status-current-file #[nil "\212\306y\210\307\310\311#\204 \312!\210\313\306!\307\n\310\311#\205 \313\306!\314\304!\2051 \307\f\310\311#\2051 \313\306!\315\211\203C \316\"\203N \316\"\316	\".\207" [cvs-status-entry-leader-re file cvs-status-dir-re cvsdir cvs-pcl-cvs-dirchange-re pcldir 1 re-search-backward nil t re-search-forward match-string boundp "" expand-file-name dir default-directory] 5])
(defalias 'cvs-status-current-tag #[nil "\212`i\306\307\310#\210`\311\312\307\310#\210`\n\fW\205j 	\fV\205j \fb\210\307\210\307\f`\313 \210\311	\310#\203g i\212\314\224b\210i)\315Z!\315Z!^\211W\203c \316\314!+\2021 +-\207" [cvs-status-tags-leader-re end start col pt dist re-search-backward nil t re-search-forward "^$" beginning-of-line 1 abs match-string tag cvs-status-tag-re cole colb ndist] 8])
(defalias 'cvs-status-minor-wrap #[(buf f) "rq\210\306 \307 B	\205 \212\310 b\210\306 \307 )B)B\211\211@A)\n\211@A)\2050 \n\211AA)\n\211@@)\n\211A@)\205W \n\211@@)\n\211A@)\232?\205W \n\211A@)CB\311\n\f -\207" [buf mark-active data x cvs-force-command cvs-minor-current-files cvs-status-current-file cvs-status-current-tag mark "/F" cvs-secondary-branch-prefix cvs-branch-prefix f] 6])
(byte-code "\301\302\303\304#\210\302\305N\204 \301\302\305\306#\210\307\301\302\310\311\312!!#\210)\301\207" [file put cvs-tag->vlist cl-compiler-macro #[(--cl-whole-arg-- cl-x) "\301\302\303\304\211\211&\207" [cl-x cl-defsubst-expand (cl-x) (block cvs-tag->vlist (or (and (memq (aref cl-x 0) cl-struct-cvs-tag-tags)) (error "cvs-tag->vlist accessing a non-cvs-tag")) (aref cl-x 1)) nil] 7] byte-compile cl-byte-compile-compiler-macro "/build/buildd/emacs23-23.4+1/debian/build-x/lisp/cvs-status.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'cvs-tag->vlist #[(cl-x) "\302H	>\204\f \303\304!\210\305H\207" [cl-x cl-struct-cvs-tag-tags 0 error "cvs-tag->vlist accessing a non-cvs-tag" 1] 2])
(byte-code "\301\302\303\304#\210\301\305\306\307#\210\305\310N\204% \301\305\310\311#\210\312\301\305\313\314\315!!#\210)\301\207" [file put cvs-tag->vlist setf-method #[(cl-x) "\301\302\303\304\305%\207" [cl-x cl-struct-setf-expander cvs-tag cvs-tag->vlist #1=(and (memq (aref cl-x 0) cl-struct-cvs-tag-tags)) 1] 6] cvs-tag->name cl-compiler-macro #[(--cl-whole-arg-- cl-x) "\301\302\303\304\211\211&\207" [cl-x cl-defsubst-expand (cl-x) (block cvs-tag->name (or #1# (error "cvs-tag->name accessing a non-cvs-tag")) (aref cl-x 2)) nil] 7] byte-compile cl-byte-compile-compiler-macro "/build/buildd/emacs23-23.4+1/debian/build-x/lisp/cvs-status.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'cvs-tag->name #[(cl-x) "\302H	>\204\f \303\304!\210\305H\207" [cl-x cl-struct-cvs-tag-tags 0 error "cvs-tag->name accessing a non-cvs-tag" 2] 2])
(byte-code "\301\302\303\304#\210\301\305\306\307#\210\305\310N\204% \301\305\310\311#\210\312\301\305\313\314\315!!#\210)\301\207" [file put cvs-tag->name setf-method #[(cl-x) "\301\302\303\304\305%\207" [cl-x cl-struct-setf-expander cvs-tag cvs-tag->name #1=(and (memq (aref cl-x 0) cl-struct-cvs-tag-tags)) 2] 6] cvs-tag->type cl-compiler-macro #[(--cl-whole-arg-- cl-x) "\301\302\303\304\211\211&\207" [cl-x cl-defsubst-expand (cl-x) (block cvs-tag->type (or #1# (error "cvs-tag->type accessing a non-cvs-tag")) (aref cl-x 3)) nil] 7] byte-compile cl-byte-compile-compiler-macro "/build/buildd/emacs23-23.4+1/debian/build-x/lisp/cvs-status.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'cvs-tag->type #[(cl-x) "\302H	>\204\f \303\304!\210\305H\207" [cl-x cl-struct-cvs-tag-tags 0 error "cvs-tag->type accessing a non-cvs-tag" 3] 2])
(byte-code "\301\302\303\304#\210\301\305\306\307#\210\305\310N\204% \301\305\310\311#\210\312\301\305\313\314\315!!#\210)\301\207" [file put cvs-tag->type setf-method #[(cl-x) "\301\302\303\304\305%\207" [cl-x cl-struct-setf-expander cvs-tag cvs-tag->type (and #1=(memq (aref cl-x 0) cl-struct-cvs-tag-tags)) 3] 6] cvs-tag-p cl-compiler-macro #[(--cl-whole-arg-- cl-x) "\301\302\303\304\211\211&\207" [cl-x cl-defsubst-expand (cl-x) (block cvs-tag-p (and (vectorp cl-x) (>= (length cl-x) 4) #1# t)) nil] 7] byte-compile cl-byte-compile-compiler-macro "/build/buildd/emacs23-23.4+1/debian/build-x/lisp/cvs-status.el" compiler-macro-file purecopy file-name-nondirectory] 6)
(defalias 'cvs-tag-p #[(cl-x) "\302!\205 G\303Y\205 \304H	>\205 \305\207" [cl-x cl-struct-cvs-tag-tags vectorp 4 0 t] 2])
(defalias 'copy-cvs-tag #[(x) "\301!\207" [x copy-sequence] 2])
(byte-code "\301\302\303\304#\210\302\305N\204 \301\302\305\306#\210\307\301\302\310\311\312!!#\210)\301\207" [file put cvs-tag-make cl-compiler-macro #[(--cl-whole-arg-- vlist &rest #1=#:--cl-rest--) "\211A@\211A@\203 \304\305\306\307G\\D\"\210\310\311\312\313\314\211	\n&*\207" [#1# name type vlist signal wrong-number-of-arguments cvs-tag-make 4 cl-defsubst-expand (vlist name type) (block cvs-tag-make (vector 'cl-struct-cvs-tag vlist name type)) t nil] 9 "Not documented\n\n(fn --CL-WHOLE-ARG-- &cl-quote VLIST &optional NAME TYPE)"] byte-compile cl-byte-compile-compiler-macro "/build/buildd/emacs23-23.4+1/debian/build-x/lisp/cvs-status.el" compiler-macro-file purecopy file-name-nondirectory] 6)
#@48 Not documented

(fn VLIST &optional NAME TYPE)
(defalias 'cvs-tag-make #[(vlist &rest #1=#:--cl-rest--) "\211A@\211A@\203 \304\305\306\307G\\D\"\210\310\311	\n$*\207" [#1# name type vlist signal wrong-number-of-arguments cvs-tag-make 3 vector cl-struct-cvs-tag] 5 (#$ . 10884)])
(byte-code "\302B\303C\304\305\306\307#\210\304\305\310\311#\210\304\305\312\313#\210\304\305\314\315#\210\304\316\317\315#\210\304\320\317\315#\210\304\321\317\322#\210\304\323\317\315#\210\304\324\317\315#\210\304\325\317\315#\207" [custom-print-functions cl-struct-cvs-tag-tags #[(cl-x cl-s cl-n) "\303!\205h G\304Y\205h \305H	>\205h \306\307\n\"\210\306\310\n\"\210\311\305H	>\204, \312\313!\210\314H\n\"\210\306\315\n\"\210\311\305H	>\204D \312\316!\210\317H\n\"\210\306\320\n\"\210\311\305H	>\204\\ \312\321!\210\322H\n\"\210\306\323\n\"\210\324\207" [cl-x cl-struct-cvs-tag-tags cl-s vectorp 4 0 princ "#S(cvs-tag" " vlist" prin1 error "cvs-tag->vlist accessing a non-cvs-tag" 1 " name" "cvs-tag->name accessing a non-cvs-tag" 2 " type" "cvs-tag->type accessing a non-cvs-tag" 3 ")" t] 3] cl-struct-cvs-tag put cvs-tag cl-struct-slots ((cl-tag-slot) (vlist) (name) (type)) cl-struct-type (vector nil) cl-struct-include nil cl-struct-print t cvs-tag-make side-effect-free copy-cvs-tag cvs-tag-p error-free cvs-tag->type cvs-tag->name cvs-tag->vlist] 4)
(defalias 'cvs-status-vl-to-str #[(vl) "\301\302\303#\207" [vl mapconcat number-to-string "."] 4])
(put 'cvs-status-vl-to-str 'byte-optimizer 'byte-compile-inline-expand)
(defalias 'cvs-tag->string #[(tag) ";\203 \207\305H	>\204 \306\307!\210\310H\305H	>\204\" \306\311!\210\312H\211\2046 \n\313\314\n\315#)\202Z \n\203H \316\n\313\314\n\315#)\317Q\202I \320:\203V \321\322\"\202Y \fP)*\207" [tag cl-struct-cvs-tag-tags vl name rev 0 error "cvs-tag->name accessing a non-cvs-tag" 2 "cvs-tag->vlist accessing a non-cvs-tag" 1 mapconcat number-to-string "." " (" ")" "" mapcar #[(name) "	P\207" [name rev] 2]] 6])
(defalias 'cvs-tag-compare-1 #[(vl1 vl2) "\204\n 	\204\n \304\207\204 \305\207	\204 \306\207@	@\211\nV\203& \306\2026 \nW\2030 \305\2026 \307A	A\"*\207" [vl1 vl2 v2 v1 equal more2 more1 cvs-tag-compare-1] 4])
(defalias 'cvs-tag-compare #[(tag1 tag2) "\303\304H	>\204 \305\306!\210\307H\n\304H	>\204 \305\306!\210\n\307H\"\207" [tag1 cl-struct-cvs-tag-tags tag2 cvs-tag-compare-1 0 error "cvs-tag->vlist accessing a non-cvs-tag" 1] 4])
(put 'cvs-tag-compare 'byte-optimizer 'byte-compile-inline-expand)
#@31 Merge TAG1 and TAG2 into one.
(defalias 'cvs-tag-merge #[(tag1 tag2) "\306H	>\204\f \307\310!\210\311H\n\306H	>\204 \307\310!\210\n\311H\306H	>\204* \307\312!\210\313H\n\306H	>\2049 \307\312!\210\n\313H\306H	>\204M \307\314!\210\315H\n\306H	>\204\\ \307\314!\210\n\315H\232\204t \306H	>\204o \307\316!\210\315\317I\210\203\230 \203\251 \232\204\251 \306H	>\204\220 \307\320!\210\311\317I\210\202\251 \306H	>\204\244 \307\320!\210\311I\210\f\203\330 \fD\321\322\323\324\"\")\306H	>\204\315 \307\325!\210\313I\210*\202\351 \306H	>\204\344 \307\325!\210\313I\210,\207" [tag1 cl-struct-cvs-tag-tags tag2 name2 name1 type2 0 error "cvs-tag->type accessing a non-cvs-tag" 3 "cvs-tag->name accessing a non-cvs-tag" 2 "cvs-tag->vlist accessing a non-cvs-tag" 1 "cvs-tag->vlist storing a non-cvs-tag" nil "cvs-tag->type storing a non-cvs-tag" apply append mapcar #[(x) "<\203 \207C\207" [x] 1] "cvs-tag->name storing a non-cvs-tag" type1 #1=#:--cl-x-- xs #2=#:--cl-store--] 5 (#$ . 13395)])
#@378 Print the tree of TAGS where each tag's string is given by PRINTER.
PRINTER should accept both a tag (in which case it should return a string)
or a string (in which case it should simply return its argument).
A tag cannot be a CONS.  The return value can also be a list of strings,
if several nodes where merged into one.
The tree will be printed no closer than column COLUMN.
(defalias 'cvs-tree-print #[(tags printer column) "\212\306\210i)\211\307\\	]\n\204 	\202\n\211:\203! @\202\" )\f\211:\2031 @\2022 )!\310\311!\311\n!\"\212\312y\313U\204L \314c\210\315	#)\211 	Y\204a \316\317\320C\"\210\321 \322\"\210l\204q \316\317\323C\"\210\211:\203~ @\202 )c\210\311\f!\306!\211\"\203	\"@!i!\211:\203\243 @\202\244 )!\211#\211:\203\264 @\202\265 )G$\324$\307\245\325\"\326P%\212\327c\210\315#%\311!!E&\330\310\331\332&\"\")i#) \212\321 !\210`)`|\210\333\324\334 	\307#\335\"\333\261\210\306\210-\"A\211\"\204\216 * ,*\207" [eol column tags x rev printer nil 2 append cvs-cdr 1 0 "\n" cvs-tree-print signal cl-assertion-failed (>= prefix column) move-to-column t (eolp) make-string 32 "|" " -- " apply mapcar #[(x) "<\203 \207C\207" [x] 1] " " - 45 name rest prefix br #1=#:--cl-dolist-temp-- brrev brlength brfill xs] 8 (#$ . 14433)])
#@116 Merge tags trees TREE1 and TREE2 into one.
BEWARE:  because of stability issues, this is not a symetric operation.
(defalias 'cvs-tree-merge #[(tree1 tree2) "<\203\n 	<\204 \306\307\310C\"\210\204 	\207	\204 \207@\211\211:\203+ @\202, )\211\311H>\204: \312\313!\210\f\314H\211G	@\211\211:\203S @\202T )\211\311H>\204c \312\313!\210\314H\211GU\203\343 \f\315\f\311H>\204\210 \312\313!\210\f\314H\311H>\204\230 \312\313!\210\314H\"*\211\316=\203\261 \317	A\"B\202\337 \320=\203\302 \n\317A	\"B\202\337 \321=\205\337 \322\f\"\317\323\n!\323!\"B\317A	A\"B)\202V\203\375 \317\324\325\326!\327\211$BC	\"\202W\205\317\324\325\326!\327\211$	BC\".\207" [tree1 tree2 rev1 x tag1 cl-struct-cvs-tag-tags signal cl-assertion-failed (and (listp tree1) (listp tree2)) 0 error "cvs-tag->vlist accessing a non-cvs-tag" 1 cvs-tag-compare-1 more1 cvs-tree-merge more2 equal cvs-tag-merge cvs-cdr vector cl-struct-cvs-tag butlast nil vl1 l1 rev2 tag2 vl2 l2 #1=#:--cl-var--] 8 (#$ . 15740)])
(defalias 'cvs-tag-make-tag #[(tag) "\302\303\304\3058\306\"\"\307\310	@\311A@!$)\207" [tag vl mapcar string-to-number split-string 2 "\\." vector cl-struct-cvs-tag intern] 6])
#@36 Make a tree out of a list of TAGS.
(defalias 'cvs-tags->tree #[(tags) "\302\303\"A\203) \304\203\" \305\211A@\211A@\"	B\202\f 	\237)\202 @)\207" [tags tl mapcar #[(tag) "\302!\211\303H	>\204 \304\305!\210\306H\307=\204 \2024 \310\311\312\303H	>\204+ \304\313!\210\314H!\315\211$D)C\207" [tag cl-struct-cvs-tag-tags cvs-tag-make-tag 0 error "cvs-tag->type accessing a non-cvs-tag" 3 branch vector cl-struct-cvs-tag butlast "cvs-tag->vlist accessing a non-cvs-tag" 1 nil] 6] nil cvs-tree-merge] 4 (#$ . 16981)])
#@238 Look for a list of tags, read them in and delete them.
Return nil if there was an empty list of tags and t if there wasn't
even a list.  Else, return the list of tags where each element of
the list is a three-string list TAG, KIND, REV.
(defalias 'cvs-status-get-tags #[nil "\306\307	\306\310#\204 \310\202\363 \311u\210`\306\310\312\313!\204\355 \312\314!\2036 \315\311!\315\316!\315\317!EB\311y\210\202 \312\320!\204A \306\fb\210\204\355 \312\321!\204U \203x \312\322!\203x \315\316!\206\\ \315\317!\315\311!\323\232\203l \324\202m \325EB\311y\210\202E \312\320!\204\203 \306\fb\210\237\211\204\355 \326\211\327\330R \331Q! \332\333\260\"\312\"!\204\273 \312!!\204\273 \312!\203\336 \315\317!\315\311!\203\310 \324\202\311 \325\315\334!EB\335\225b\210l\203\246 \311u\210\202\246 ,\312\320!\204\352 \306\fb\210\237\f`|\210+)\207" [tags cvs-status-tags-leader-re case-fold-search lastrev pt re-lead nil re-search-forward t 1 looking-at "\\s-+no\\s-+tags" "^[ 	]+\\([^ 	\n]+\\)[ 	]+(\\([a-z]+\\): \\(.+\\))$" match-string 2 3 "^$" "^   .+\\(.\\)  \\([0-9.]+\\): \\([^\n	 .0-9][^\n	 ]*\\)?$" "^   .+\\(\\)  \\(8\\)?  \\([^\n	 .0-9][^\n	 ]*\\)$" " " "branch" "revision" "[ 	]*\\(-+\\)?\\(|\n?[ 	]+\\)*" "\\(\\.\\)?\\(" "\\)" "\\(\\)" " (\\(" "\\))" 4 0 cvs-status-rev-re re3 cvs-status-tag-re re2 re1] 6 (#$ . 17520)])
(defalias 'cvs-refontify #[(beg end) "\303\300!\205 \205 \304\305!\205 \305	S\nT\"\207" [font-lock-mode beg end boundp fboundp font-lock-fontify-region] 3])
#@56 Look for a lists of tags, and replace them with trees.
(defalias 'cvs-status-trees #[nil "\212eb\210\303\304\305 \211<\205% \214``}\210\306\216\303\307\310!\311\312#\210+\202 +\207" [tags inhibit-read-only combine-after-change-calls t nil cvs-status-get-tags ((combine-after-change-execute)) cvs-tree-print cvs-tags->tree cvs-tag->string 3] 4 (#$ . 19046) nil])
(byte-code "\301B\302\301!\204 \303\301\304\"\210\304\207" [current-load-list cvs-tree-use-jisx0208 default-boundp set-default nil] 3)
#@125 *Non-nil if we should use the graphical glyphs from `japanese-jisx0208'.
Otherwise, default to ASCII chars like +, - and |.
(defvar cvs-tree-use-charset (byte-code "\203 \301\207\302\303!\203 \304\207\302\305\306\307\310#!\205 \301\207" [cvs-tree-use-jisx0208 jisx0208 char-displayable-p 9473 unicode make-char japanese-jisx0208 40 44] 5) (#$ . -19559))
(byte-code "\302B\303	\304=\203 \305\306\307\211#\202 	\310=\203 \311\202 \312!\210\313B\314	\304=\2033 \305\306\315\316#\202> 	\310=\203= \317\202> \320!\210\321B\322	\304=\203S \305\306\315\323#\202^ 	\310=\203] \324\202^ \325!\210\326B\327	\304=\203s \305\306\315\330#\202~ 	\310=\203} \331\202~ \332!\210\333B\334	\304=\203\223 \305\306\315\335#\202\236 	\310=\203\235 \336\202\236 \337!\210\340B\341	\304=\203\263 \305\306\315\342#\202\276 	\310=\203\275 \343\202\276 \332!\207" [current-load-list cvs-tree-use-charset cvs-tree-char-space (lambda (#1=#:defconst-tmp-var) (defconst cvs-tree-char-space #1#)) jisx0208 make-char japanese-jisx0208 33 unicode " " "  " cvs-tree-char-hbar (lambda (#2=#:defconst-tmp-var) (defconst cvs-tree-char-hbar #2#)) 40 44 "━" "--" cvs-tree-char-vbar (lambda (#3=#:defconst-tmp-var) (defconst cvs-tree-char-vbar #3#)) 45 "┃" "| " cvs-tree-char-branch (lambda (#4=#:defconst-tmp-var) (defconst cvs-tree-char-branch #4#)) 50 "┣" "+-" cvs-tree-char-eob (lambda (#5=#:defconst-tmp-var) (defconst cvs-tree-char-eob #5#)) 49 "┗" "`-" cvs-tree-char-bob (lambda (#6=#:defconst-tmp-var) (defconst cvs-tree-char-bob #6#)) 51 "┳"] 5)
(defalias 'cvs-tag-lessp #[(tag1 tag2) "	\303\304H\n>\204 \305\306!\210\307H	\304H\n>\204  \305\306!\210	\307H\"*\310=\207" [tag1 tag2 cl-struct-cvs-tag-tags cvs-tag-compare-1 0 error "cvs-tag->vlist accessing a non-cvs-tag" 1 more2] 4])
(byte-code "\301B\302\301!\204 \303\301\304\"\210\304\207" [current-load-list cvs-tree-nomerge default-boundp set-default nil] 3)
#@111 Look for a list of tags, and replace it with a tree.
Optional prefix ARG chooses between two representations.
(defalias 'cvs-status-cvstrees #[(&optional arg) "\203 	\204 \306 \307\211\310\216\311ed\312#\210\313\307!\210,\212eb\210\307\314\203, ?\202. \315 \211<\205\215 \316\317\"\320\321\"\211@\322!\205{ G\323Y\205{ \324H>\205{ \324H>\204u \325\326!\210\327H@C\330\216\307\331\"\210-\2023 ,\207" [cvs-tree-use-charset enable-multibyte-characters inhibit-modification-hooks inhibit-read-only modified arg buffer-modified-p t ((restore-buffer-modified-p modified)) decode-coding-region undecided set-buffer-multibyte nil cvs-status-get-tags mapcar cvs-tag-make-tag sort cvs-tag-lessp vectorp 4 0 error "cvs-tag->vlist accessing a non-cvs-tag" 1 ((combine-after-change-execute)) cvs-tree-tags-insert cvs-tree-nomerge tags first cl-struct-cvs-tag-tags prev combine-after-change-calls] 5 (#$ . 21488) "P"])
(defalias 'cvs-tree-tags-insert #[(tags prev) "\205\307@\211\306H\n>\204 \307\310!\210	\311H\211A@)\211:\203( \f@\202) \f)\"\203M \203M \306H\n>\204A \307\310!\210\311H\232\203M #\202N $\312\313$##*$\212\314 \210\315A$\")%\316&\317'\320c\210(#)%\211*\204\211 (\204\211 )\203P&\205\225 )@(@\232+)\211A@)(\211A@)\232,*@\203\315 +\203\306 ,\203\277 \316-B\202)\316.B\202)\317/B\202)+\203\345 ,\203\336 \3170B\202)\3161B\202)\317	\306H\n>\204\362 \307\321!\210	\322H\323=\203&\324*232:\20332\211A2@!\204\316\2112\2022*\204&0\202(4B\2115Ac\2105@'B')+&*(A()A)*A\211*\202| 6\325\3266\327#)7\330\312\331##232:\203\20132\211A2@!\204g\316\2112\202i2*\204\247\332\3337G\\\334\"	\306H\n>\204\233\307\335!\210	\336H\206\242\337\261\202\300\3407\341	\306H\n>\204\267\307\335!\210	\336H\206\276\337\261,\210'\237.\207" [tags tag cl-struct-cvs-tag-tags vlist x next 0 error "cvs-tag->vlist accessing a non-cvs-tag" 1 cvs-map #[(v p) "\207" [v] 1] newline cvs-tree-tags-insert t nil "   " "cvs-tag->type accessing a non-cvs-tag" 3 branch null mapconcat number-to-string "." identity equal make-string 4 32 "cvs-tag->name accessing a non-cvs-tag" 2 "" "  " ": " cvs-tree-nomerge prev nprev after pe nas vs ps as eq next-eq cvs-tree-char-vbar cvs-tree-char-branch cvs-tree-char-bob cvs-tree-char-space cvs-tree-char-eob -cvs-every-l -cvs-every-f cvs-tree-char-hbar na+char vl revname] 7])
(defalias 'cvs-tree-fuzzy-merge-1 #[(trees tree prev) "\300\207" [nil] 1])
#@44 Do the impossible:  merge TREE into TREES.
(defalias 'cvs-tree-fuzzy-merge #[(trees tree) "\300\207" [nil] 1 (#$ . 24015)])
#@69 Get tags from the status output and merge tham all into a big tree.
(defalias 'cvs-tree #[nil "\212eb\210\304\305\306\307\"\310\311\312 !\211<\203 \313	\"\210\202 \314 \210\310\315\316\317#-\207" [tree trees inhibit-read-only cvs-tag-print-rev t make-vector 31 0 nil cvs-tags->tree cvs-status-get-tags cvs-tree-fuzzy-merge erase-buffer cvs-tree-print cvs-tag->string 3] 4 (#$ . 24145)])
(provide 'cvs-status)
