;ELC   
;;; Compiled by pot@pot.cnuce.cnr.it on Tue Mar 18 15:47:34 2003
;;; from file /home/pot/gnu/emacs-pretest.new/lisp/mail/mail-utils.el
;;; in Emacs version 21.3
;;; with bytecomp version 2.85.4.1
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.
(if (and (boundp 'emacs-version)
	 (< (aref emacs-version (1- (length emacs-version))) ?A)
	 (or (and (boundp 'epoch::version) epoch::version)
	     (string-lessp emacs-version "19.29")))
    (error "`mail-utils.el' was compiled for Emacs 19.29 or later"))

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


(require 'lisp-mode)
#@148 *If non-nil, use a full, hairy RFC822 parser on mail addresses.
Otherwise, (the default) use a smaller, somewhat faster, and
often correct parser.
(custom-declare-variable 'mail-use-rfc822 'nil '(#$ . -649) :type 'boolean :group 'mail)
(defalias 'mail-file-babyl-p #[(file) "\302\303!\304\216\212q\210\305	\306\307\310$\210\311\312!+\207" [buf file generate-new-buffer " *rmail-file-p*" ((kill-buffer buf)) insert-file-contents nil 0 100 looking-at "BABYL OPTIONS:"] 5])
#@102 Returns a string containing all of STRING except the part
from START (inclusive) to END (exclusive).
(defalias 'mail-string-delete #[(string start end) "\204	 	\303\nO\207	\303\nO	\304OP\207" [end string start 0 nil] 4 (#$ . 1129)])
#@154 Convert a string to the "quoted printable" Q encoding.
If the optional argument WRAPPER is non-nil,
we add the wrapper characters =?ISO-8859-1?Q?....?=.
(defalias 'mail-quote-printable #[(string &optional wrapper) "\305\306\307 \310\216\311\312	#\203' 	\305\224O\313\314\305\224H\"\226Q\305\225\202	 \f\2036 \315	\316O\317R\202< 	\316OP,\207" [result i save-match-data-internal string wrapper 0 "" match-data ((set-match-data save-match-data-internal)) string-match "[?=\"\200-\377]" format "=%02x" "=?ISO-8859-1?Q?" nil "?="] 6 (#$ . 1371)])
(defalias 'mail-unquote-printable-hexdigit #[(char) "\301Y\203\f \301Z\302\\\207\303Z\207" [char 65 10 48] 2])
#@159 Undo the "quoted printable" encoding.
If the optional argument WRAPPER is non-nil,
we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=.
(defalias 'mail-unquote-printable #[(string &optional wrapper) "\305 \306\216	\203 \307\310\n\"\203 \311\312\n\"\313\314\307\315\n\f#\203N \n\f\313\224OB\n\312\224H\316U\204H \317\312\320\n\312\224H!\321_\320\n\312\224TH!\\\"B\313\225\202 \322\323\n\f\314OB\237\",\207" [save-match-data-internal wrapper string strings i match-data ((set-match-data save-match-data-internal)) string-match "\\`=\\?ISO-8859-1\\?Q\\?\\([^?]*\\)\\?" match-string 1 0 nil "=\\(..\\|\n\\)" 10 make-string mail-unquote-printable-hexdigit 16 apply concat] 6 (#$ . 2048)])
#@185 Undo the "quoted printable" encoding in buffer from BEG to END.
If the optional argument WRAPPER is non-nil,
we expect to find and remove the wrapper characters =?ISO-8859-1?Q?....?=.
(defalias 'mail-unquote-printable-region #[(beg end &optional wrapper) "\304 \305\216\212\214	\n}\210eb\210\203\" \306\307!\203\" \310\225\n|\210`\310\224|\210\311\312\313\314#\205S \315\225b\210\316\310\224f\317U\203; \320\202L \321\310\322\310\224f!\323_\322\310\224Tf!\\\"\314\211#\210\202\" ,\207" [save-match-data-internal beg end wrapper match-data ((set-match-data save-match-data-internal)) looking-at "\\`=\\?ISO-8859-1\\?Q\\?\\([^?]*\\)\\?" 1 re-search-forward "=\\(..\\|\n\\)" nil t 0 replace-match 10 "" make-string mail-unquote-printable-hexdigit 16] 6 (#$ . 2774) "r\nP"])
#@173 Delete comments and quoted strings in an address list ADDRESS.
Also delete leading/trailing whitespace and replace FOO <BAR> with just BAR.
Return a modified address list.
(defalias 'mail-strip-quoted-names #[(address) "\205\302 	\203 \304\305!\210\306\307\310!\311#\207\312\313\314\"\203W r\315\316!q\210\317 \210c\210\320!\210\321b\210\322\323\312\324#\203M \325u\210\326\312x\210`\212\312\327\330\217\210`)|\210\2020 \331 \317 \210)\202k \313\332\"\211\203k \333\334\312\211\335%\202W \313\336\"\210\335\225\313\337\335\225#O\335\313\340\n#\211\203\251 G\335\225V\203\236 \335\225H\341U\203\236 \335\225\202} \333\334\312\211\342%\202} \313\343\"\211\203\300 \333\344\345\"\312\346\342%\202\251 )\207" [address mail-use-rfc822 pos lisp-mode-syntax-table require rfc822 mapconcat identity rfc822-addresses ", " nil string-match "[ 	]*(\\([^)\\]\\|\\\\.\\|\\\\\n\\)*(" get-buffer-create " *temp*" erase-buffer set-syntax-table 1 search-forward "(" t -1 " 	" (forward-sexp 1) ((error (byte-code "db\207" [] 1))) buffer-string "[ 	]*(\\([^)\\]\\|\\\\.\\|\\\\\n\\)*)" replace-match "" 0 "\\`[ 	\n]*" "[ 	\n]*\\'" "\\([ 	]?\\)\\([ 	]*\"\\([^\"\\]\\|\\\\.\\|\\\\\n\\)*\"[ 	\n]*\\)" 64 2 "\\(,\\s-*\\|\\`\\)\\([^,]*<\\([^>,:]*\\)>[^,]*\\)\\(\\s-*,\\|\\'\\)" match-string 3 literal] 6 (#$ . 3554)])
#@184 Returns string of mail addresses USERIDS sans any recipients
that start with matches for `rmail-dont-reply-to-names'.
Usenet paths ending in an element that matches are removed also.
(defalias 'rmail-dont-reply-to #[(userids) "\204 	\203 	\306P\202 \307\310\311 !\312PP\313\314\315\306\316\317\320\321\260\n\322\323\211\324#\211\203\265 G\325V\203\265 \323\211\211\326  \327\216\324\330#\211\203q W\203q T?\202L *\203\250 \324\330#\203\212 \324\330#\202\261 \331\307\323\211$\211\325OT\323OPS\202\261 \331\307\323\211$+\202* \324\332\"\211\203\306 \325O\324\333\"\203\327 \325\225\323O\202\331 ,\207" [rmail-dont-reply-to-names rmail-default-dont-reply-to-names epos pos case-fold-search match "\\|" "" regexp-quote user-login-name "\\>" "\\(^\\|,\\)[ 	\n]*" "\\([^,\n]*[!<]\\|\\)" "\\(" "\\([^,.<\"]\\|\"[^\"]*\"\\)*" "<\\(" "\\)" "\\)[^,]*" t nil string-match 0 match-data ((set-match-data save-match-data-internal)) "\"" replace-match "[ ,	\n]*\\'" "\\(\\s \\|,\\)*" userids last-quote-pos quote-pos inside-quotes save-match-data-internal] 11 (#$ . 4884)])
#@347 Return the value of the header field whose type is FIELD-NAME.
The buffer is expected to be narrowed to just the header of the message.
If second arg LAST is non-nil, use the last field of type FIELD-NAME.
If third arg ALL is non-nil, concatenate all such fields with commas between.
If 4th arg LIST is non-nil, return a list of all such fields.
(defalias 'mail-fetch-field #[(field-name &optional last all list) "\212eb\210\306\307\310!\311Q\204 \f\203q \205 \312\313	\314\306#\203] `\315y\210\316\317!\204& \320u\210\321x\210\f\203F \322`\"B\202Y \211\312\230\203Q \312\202R \323\322`\"Q)\202 \f\203e \202m \312\230?\205m )\202\240 \313	\314\306#\205\240 \203\206 \313	\314\306#\204~ `\315y\210\316\317!\204\211 \320u\210\321x\210\322`\")+\207" [field-name name case-fold-search all list value t "^" regexp-quote "[ 	]*:[ 	]*" "" re-search-forward nil 1 looking-at "[ 	]" -1 " 	" buffer-substring-no-properties ", " opoint last] 5 (#$ . 6038)])
(defalias 'mail-parse-comma-list #[nil "\302\211\303\302w\210m\204( `\304\302w\210\303\302x\210\305`\"	B\304\302w\210\306\302w\210\202 	*\207" [beg accumulated nil " 	\n" "^," buffer-substring-no-properties ", 	\n"] 3])
(defalias 'mail-comma-list-regexp #[(labels) "\302\303\304	\"\206\n \305	\303\306	#O\303\307	\"\211\203, 	\305O\310	\305\225\302OQ\202 )	\207" [pos labels nil string-match "[^ 	]" 0 "[ 	]*$" "[ 	]*,[ 	]*" "\\|"] 6])
(defalias 'mail-rfc822-time-zone #[(time) "\303!@\206 \304\305	!\306\245\307\310	\304W\203 \311\202 \312\n\306\245\n\306\246$*\207" [time sec absmin current-time-zone 0 abs 60 format "%c%02d%02d" 45 43] 6])
(defalias 'mail-rfc822-date #[nil "\302 \303!\304\305	\"\210	\306\224\306\225O\307	\310\224\310\225O\307	\311\224\311\225O\307	\312\224\312\225O\307\313!\260	*\207" [time s current-time current-time-string string-match "[^ ]+ +\\([^ ]+\\) +\\([^ ]+\\) \\([^ ]+\\) \\([^ ]+\\)" 2 " " 1 4 3 mail-rfc822-time-zone] 10])
(provide 'mail-utils)
