%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/vc/ |
Current File : //usr/local/share/emacs/27.2/lisp/vc/pcvs-parse.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file uses dynamic docstrings, first added in Emacs 19.29. ;;; This file does not contain utf-8 non-ASCII characters, ;;; and so can be loaded in Emacs versions earlier than 23. ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\300\302!\210\303\304\305\306\307\310\311\312&\210\303\313\314\315\307\310\311\316&\207" [require pcvs-util pcvs-info custom-declare-variable cvs-update-prog-output-skip-regexp "$" "A regexp that matches the end of the output from all cvs update programs.\nThat is, output from any programs that are run by CVS (by the flag -u\nin the `modules' file - see cvs(5)) when `cvs update' is performed should\nterminate with a line that this regexp matches. It is enough that\nsome part of the line is matched.\n\nThe default (a single $) fits programs without output." :group pcl-cvs :type (regexp :value "$") cvs-parse-ignored-messages '("Executing ssh-askpass to query the password.*$" ".*Remote host denied X11 forwarding.*$") "A list of regexps matching messages that should be ignored by the parser.\nEach regexp should match a whole set of lines and should hence be terminated\nby `$'." (repeat regexp)] 8) #@64 List of CVS commands whose output is understood by the parser. (defconst cvs-parse-known-commands '("status" "add" "commit" "update" "remove" "checkout" "ci") (#$ . 1343)) #@550 Parse current buffer according to PARSE-SPEC. PARSE-SPEC is a function of no argument advancing the point and returning either a fileinfo or t (if the matched text should be ignored) or nil if it didn't match anything. DONT-CHANGE-DISC just indicates whether the command was changing the disc or not (useful to tell the difference between `cvs-examine' and `cvs-update' output. The path names should be interpreted as relative to SUBDIR (defaults to the `default-directory'). Return a list of collected entries, or t if an error occurred. (defalias 'cvs-parse-buffer #[(parse-spec dont-change-disc &optional subdir) "eb\210\306\307\306\206 \307m\204U \f\310=\204U \311 !\f\312\f! >\2030 \f\fB\202Q \f:\203J \312\f@! >\203J \313\f\f\"\202Q \f\204Q \310)\202 \f\237,\207" [subdir cvs-current-subdir case-fold-search cvs-current-dir fileinfos parse-spec nil "" t cvs-parse-run-table type-of append ret cl-struct-cvs-fileinfo-tags] 4 (#$ . 1522)]) (defalias 'cvs-parse-msg #[nil "`S{\207" [cvs-start] 2]) (put 'cvs-parse-msg 'byte-optimizer 'byte-compile-inline-expand) #@173 Try to match RE and extract submatches. If RE matches, advance the point until the line after the match and then assign the variables as specified in MATCHES (via `setq'). (defalias 'cvs-match '(macro . #[(re &rest matches) "\302\303\304 \"BB\207" [re matches cvs-do-match mapcar #[(match) "\301\302@DA@E\207" [match cons quote] 3]] 5 (#$ . 2625)])) #@91 Internal function for the `cvs-match' macro. Match RE and if successful, execute MATCHES. (defalias 'cvs-do-match #[(re &rest matches) "\305!\205A \306\225b\210l\203 `dW\203 \307u\210 \307\211\203= @\211A\n@\f\250\2032 \310\f!\2023 \fL\210)A\211\204 \307*\311\207" [re matches match --dolist-tail-- val looking-at 0 nil match-string t] 4 (#$ . 2984)]) #@58 Try each one of the ALTS alternatives until one matches. (defalias 'cvs-or '(macro . #[(&rest alts) "\301\302\303\304\305\"BE\207" [alts let ((-cvs-parse-point (point))) or mapcar #[(es) "\301\302BB\207" [es or ((ignore (goto-char -cvs-parse-point)))] 3]] 6 (#$ . 3354)])) (put 'cvs-or 'edebug-form-spec t) #@55 Run PARSE-SPEC and provide sensible default behavior. (defalias 'cvs-parse-run-table #[(parse-spec) "n\204 \306y\210``\n \206_ \307 b\210\206_ \3102; \307\211\2059 @\311\f!\2031 \312\310\313\"\210 A\211\204# \307*0\206_ \307 b\210\206_ \311\314!\203[ \315\316\317`S{\320\321&\206_ \307 b\210*\207" [cvs-start -cvs-parse-point parse-spec cvs-parse-ignored-messages re --dolist-tail-- 1 nil --cl-block-nil-- cvs-do-match throw t ".*$" cvs-create-fileinfo MESSAGE " " :subtype ERROR cvs-current-dir] 8 (#$ . 3669)]) #@675 Create a fileinfo. TYPE can either be a type symbol or a cons of the form (TYPE . SUBTYPE). PATH is the filename. DIRECTORY influences the way PATH is interpreted: - if a string, it denotes the directory in which PATH (which should then be a plain file name with no directory component) resides. - if it's nil, the PATH should not be trusted: if it has a directory component, use it, else, assume it is relative to the current directory. - else, the PATH should be trusted to be relative to the root directory (i.e. if there is no directory component, it means the file is inside the main directory). The remaining KEYS are passed directly to `cvs-create-fileinfo'. (defalias 'cvs-parsed-fileinfo #[(type path &optional directory &rest keys) " ;\204 \306 !\206 \205 \307\310 !\f:\203# \f@\202$ \f\f:\205+ \fA\2034 \f\311\312\f \206? \fP\n`S{\313 &,\207" [directory path file dir type subtype file-name-directory "" file-name-nondirectory apply cvs-create-fileinfo :subtype cvs-current-dir cvs-current-subdir cvs-start keys] 9 (#$ . 4202)]) #@51 Table of message objects for `cvs-parse-process'. (defalias 'cvs-parse-table #[nil "\306\211\211\211\211\211`@\307 \206~\306@b\210\206~\310 \206~\306@b\210\206~\311 \206~\306@b\210\206~\312\313\305\314B\302\315B#\203\276 \316HA\317A\320\267\202\266 \321\202\267 \322\202\267 \323\202\267 \324\202\267 B\204h \325\202\267 \326\327!CrCq\210\330\216\3311 \332\n!0\202\203 \210\202\204 \210eb\210\333\334\306\335#\203\223 \325\202\224 \336+\202\267 \336\202\267 B\203\245 \337\202\267 \340A\341=\203\261 \342\202\262 \343B\202\267 \306\n\344#)\206~\306@b\210\206~\312\345\303\314B\"\203\326 \211D\206~\306@b\210\206~\335E\312\346!)\203P`@\312\347\303\315B\"\203\350\230\203\376 \351\202\352!\317\353\350#)\206L\306@b\210\206L\312\354\303\314B\"\203h\3551U\326\327!FrFq\210\356\216\3571<\332\360\361\362!\"!0\202@\210\202A\210eb\210\333\363\364\365!!\366Q\306\335#+0\202Y\210\202`\203`\335\202L\317\367\335#\206L\306@b\210\206L`@\312\370\304\314B\"\206\264\306@b\210\206\264\312\371\304\314B\"\206\264\306@b\210\206\264\312\372\304\314B\"\206\264\306@b\210\206\264\312\373\304\314B\"\206\264\306@b\210)\203\310\317B\203\302\374\202\303\375\f\"\206L\306@b\210\206L`@\312\376\302\314B\"\206\362\306@b\210\206\362\312\377\302\314B\"\206\362\306@b\210)\203\375\317\322\n\"\206L\306@b\210\206L\312\201I \302\314B\301\315B#\203!\317\201J \n\306\201K %\206L\306@b\210\206L\312\201L \302\314B\"\203;\317\375\n\"\206L\306@b\210\206L\312\201M \304\314B\"\203U\317\323\f\"\206L\306@b\210\206L\312\201N \302\314B\"\203\213\312\201O \364\n!\201P Q!\203\213\317B\203\203\201Q \202\206\201R \n\"\206L\306@b\210\206L\312\201S !\203\366`@\312\201T \302\314B\300\323B#\206\335\306@b\210\206\335\312\201U \302\314B\300\322B#\206\335\306@b\210\206\335\312\201V \302\314B\300\321B#\206\335\306@b\210)\203\366\312\201W \364\n!P!\203\366\317\325B\n\"\206L\306@b\210\206L`@\312\201X \304\314B\"\2067\306@b\210\2067\312\201Y \304\314B\"\2067\306@b\210\2067\312\201Z \304\314B\"\2067\306@b\210)\203D\317\201[ \f\"\206L\306@b\210\206L\312\201\\ \302\314B\"\203^\317\324\n\"\206L\306@b\210\206L\312\201] \304\314B\"\203x\317\336\f\"\206L\306@b\210\206L\312\201^ !\203\245G\204\245\335\211G\203\245\201_ \201[ \351\201` \201a $\206L\306@b\210\206L\312\201b !\206L\306@b\210\206L\312\201c !\206L\306@b\210\206L\312\201d !\206L\306@b\210\206L\312\201e \302\314B\"\203\360\317\375\n\344#\206L\306@b\210\206L\312\201f !\206L\306@b\210\206L\312\201g !\206L\306@b\210\206L\312\201h !\206L\306@b\210\206L\312\201i !\206L\306@b\210\206L\312\201j !\203G\333H!\206L\306@b\210)\206~\306@b\210\206~\312\201k !\203i\317\201[ \351\"\206~\306@b\210\206~\312\201l !\206~\306@b\210.\207" [subtype base-rev path dir file c nil cvs-parse-status cvs-parse-merge cvs-parse-commit cvs-do-match "\\([MARCUPNJ?]\\) \\(.*\\)$" 1 2 0 cvs-parsed-fileinfo #s(hash-table size 8 test eql rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (77 79 65 83 82 87 63 91 67 95 74 152 80 156 85 156)) MODIFIED ADDED REMOVED UNKNOWN CONFLICT generate-new-buffer " *temp*" #[nil "\301!\205 \302!\207" [#1=#:temp-buffer buffer-name kill-buffer] 2] (error) insert-file-contents re-search-forward "^<<<<<<< " t NEED-MERGE NEED-UPDATE UP-TO-DATE 85 UPDATED PATCHED trust "pcl-cvs: descending directory \\(.*\\)$" "cvs[.a-z]* [a-z]+: " "\\(Examining\\|Updating\\) \\(.*\\)$" "." "" file-name-as-directory DIRCHANGE "New directory `\\(.*\\)' -- ignored$" (error) #[nil "\301!\205 \302!\207" [#2=#:temp-buffer buffer-name kill-buffer] 2] (error) expand-file-name ".cvsignore" file-name-directory "^" regexp-quote file-name-nondirectory "/$" (NEED-UPDATE . NEW-DIR) "warning: `\\(.*\\)' is not (any longer) pertinent$" "warning: \\(.*\\) is not (any longer) pertinent$" "`\\(.*\\)' is no longer in the repository$" "\\(.*\\) is no longer in the repository$" (NEED-UPDATE . REMOVED) DEAD "scheduling file `\\(.*\\)' for addition.*$" "re-adding file \\(.*\\) (in place of .*)$" -cvs-parse-point code dont-change-disc #1# cvs-current-subdir case-fold-search #2# cvs-execute-single-dir cvs-update-prog-output-skip-regexp "`?\\(.*?\\)'?, version \\(.*\\), resurrected$" (UP-TO-DATE . RESURRECTED) :base-rev "removed `\\(.*\\)'$" "scheduling `\\(.*\\)' for removal$" "warning: \\(.*\\) was lost$" "U " "$" MISSING (UP-TO-DATE . UPDATED) "conflict: " "removed \\(.*\\) was modified by second party$" "\\(.*\\) created independently by second party$" "\\(.*\\) is modified but no longer in the repository$" "C " "move away \\(.*\\); it is in the way$" "warning: new-born \\(.*\\) has disappeared$" "sticky tag .* for file `\\(.*\\)' is not a branch$" MESSAGE "use `.+ add' to create an entry for \\(.*\\)$" "Up-to-date check failed for `\\(.+\\)'$" ".* files with '?/'? in their name.*$" cvs-create-fileinfo " " "*** Add (setq cvs-execute-single-dir t) to your .emacs ***\n See the FAQ file or the variable's documentation for more info." "\\[..:..:..\\] \\(waiting for\\|obtained\\) .*lock in .*$" ".* should be removed and is still there$" "use ['`].+ commit' to \\sw+ th\\sw+ files? permanently$" "nothing known about \\(.*\\)$" "checksum failure after patch to .*; will refetch$" "refetching unpatchable files$" "Rebuilding administrative file database$" "--> Using per-directory sticky tag `.*'" "Executing.*$" "cvs[.ex]* \\[[a-z]+ aborted\\]:.*$" "Directory .* added to the repository$"] 6 (#$ . 5279)]) (defalias 'cvs-parse-merge #[nil "\306\211\211\211\307\310!\205\367 \307\311\302\312B\"\205\367 \307\311\301\312B\"\205\367 \307\313\303\312B\"\205\367 `\307\314\300\315B\"\206<