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/gnus/

[  Home  ][  C0mmand  ][  Upload File  ]

Current File : //usr/share/emacs/24.3/lisp/gnus/gnus-async.elc
;ELC
;;; Compiled by mockbuild@buildfarm06-new.corp.cloudlinux.com on Fri Oct 11 10:09:37 2024
;;; from file /builddir/build/BUILD/emacs-24.3/lisp/gnus/gnus-async.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\301%\210\311\312\313\314\310\305\315\316&\210\311\305\306\317\310\305\315\320&\210\311\321\322\323\310\305\315\324&\210\311\325\306\326\310\305\315\320&\210\311\327\330\331\310\305\315\332&\210\311\333\306\334\335\336\310\305\315\332&	\207" [require gnus gnus-sum nntp custom-declare-group gnus-asynchronous nil "Support for asynchronous operations." :group custom-declare-variable gnus-use-article-prefetch 30 "*If non-nil, prefetch articles in groups that allow this.\nIf a number, prefetch only that many articles forward;\nif t, prefetch as many articles as possible." :type (choice (const :tag "off" nil) (const :tag "all" t) (integer :tag "some" 0)) "*If nil, inhibit all Gnus asynchronicity.\nIf non-nil, let the other asynch variables be heeded." boolean gnus-prefetched-article-deletion-strategy '(read exit) "List of symbols that say when to remove articles from the prefetch buffer.\nPossible values in this list are `read', which means that\narticles are removed as they are read, and `exit', which means\nthat all articles belonging to a group are removed on exit\nfrom that group." (set (const read) (const exit)) gnus-use-header-prefetch "*If non-nil, prefetch the headers to the next group." gnus-async-prefetch-article-p 'gnus-async-unread-p "Function called to say whether an article should be prefetched or not.\nThe function is called with one parameter -- the article data.\nIt should return non-nil if the article is to be prefetched." function gnus-async-post-fetch-function "Function called after an article has been prefetched.\nThe function will be called narrowed to the region of the article\nthat was fetched." :version "24.1"] 10)
(defvar gnus-async-prefetch-article-buffer " *Async Prefetch Article*")
(defvar gnus-async-article-alist nil)
(defvar gnus-async-article-semaphore '(nil))
(defvar gnus-async-fetch-list nil)
(defvar gnus-async-hashtb nil)
(defvar gnus-async-current-prefetch-group nil)
(defvar gnus-async-current-prefetch-article nil)
(defvar gnus-async-timer nil)
(defvar gnus-async-prefetch-headers-buffer " *Async Prefetch Headers*")
(defvar gnus-async-header-prefetched nil)
#@74 Say whether GROUP is fetched from a server that supports asynchronicity.
(defalias 'gnus-group-asynchronous-p #[(group) "\301\302!!\207" [group gnus-asynchronous-p gnus-find-method-for-group] 3 (#$ . 2757)])
#@35 Wait until SEMAPHORE is released.
(defalias 'gnus-async-get-semaphore #[(semaphore) "J\301C\244G\302U?\205\303\304!\210\202\207" [semaphore nil 2 sleep-for 1] 2 (#$ . 2972)])
#@20 Release SEMAPHORE.
(defalias 'gnus-async-release-semaphore #[(semaphore) "J\301\241\207" [semaphore nil] 2 (#$ . 3158)])
(defalias 'gnus-async-with-semaphore '(macro . #[(&rest forms) "\301\302\303BB\304BB\207" [forms unwind-protect progn (gnus-async-get-semaphore 'gnus-async-article-semaphore) ((gnus-async-release-semaphore 'gnus-async-article-semaphore))] 4]))
(byte-code "\300\301\302\303#\210\300\301\304\305#\210\306\307\310\"\207" [put gnus-async-with-semaphore lisp-indent-function 0 edebug-form-spec (body) gnus-add-shutdown gnus-async-close gnus] 4)
(defalias 'gnus-async-close #[nil "\211\211\205\n;\203\306\202\307\n!)\203#\310\306	!\"\311	!\210)\f\211\211\2058\n;\2035\306\2026\307\n!)\203G\310\306	!\"\311	!\210)\312\211\312\211\f\207" [gnus-async-prefetch-article-buffer buf buffer gnus-buffers gnus-async-prefetch-headers-buffer gnus-async-hashtb get-buffer buffer-name delete kill-buffer nil gnus-async-article-alist gnus-async-header-prefetched] 4])
(defalias 'gnus-async-set-buffer #[nil "\302\303\"\210	?\205\304\305!\211\207" [gnus-async-prefetch-article-buffer gnus-async-hashtb nnheader-set-temp-buffer t gnus-make-hashtable 1023] 3])
#@19 Stop prefetching.
(defalias 'gnus-async-halt-prefetch #[nil "\301\211\207" [gnus-async-fetch-list nil] 2 (#$ . 4353)])
#@77 Possibly prefetch several articles starting with the article after ARTICLE.
(defalias 'gnus-async-prefetch-next #[(group article summary) "\211\205\306\307	!!)\205Y\n\205Y\310!\205Yr\fq\210
\236>)A@@\211\205X\311\312!\204A\313#\202X\203K\314\315\316\217\210\312\317\314\313&\211*\207" [summary buffer gnus-asynchronous group gnus-summary-buffer gnus-newsgroup-data buffer-live-p get-buffer gnus-group-asynchronous-p fboundp run-with-idle-timer gnus-async-prefetch-article nil (byte-code "\300\301!\207" [nnheader-cancel-timer gnus-async-timer] 2) ((error)) 0.1 bdata article next gnus-async-timer] 8 (#$ . 4479)])
#@59 Possibly prefetch several articles starting with ARTICLE.
(defalias 'gnus-async-prefetch-article #[(group article summary &optional next) "\211\205\306\307	!!)\204\310\216\311\312!\210\313\211)\207\205\314 \205\f\2033\315\216\311\312!\210\n\210\nA)\f\316\317!\205\211\205J\306\307	!!)\205\f\203V\n\205\320\216\311\312!\210\f\204\307\n?\313\236>)\313 !\"!\211A!@\211 \203\303\"\247\203\232\321\"S\211\"!\202\234\"\203\303\322 @\211\"\204|\321!\203|# !\203|\nB\202|\n\237+\203\320\n@)\205\205rq\210\313$\323 \210db\210\324 $\325$\f%\307%!&'
\203\326\327\330$\210()\331\",*\207" [summary buffer gnus-async-fetch-list gnus-asynchronous next do-message buffer-live-p get-buffer ((byte-code "\300\301!\207" [gnus-async-release-semaphore gnus-async-article-semaphore] 2)) gnus-async-get-semaphore gnus-async-article-semaphore nil gnus-alive-p ((byte-code "\300\301!\207" [gnus-async-release-semaphore gnus-async-article-semaphore] 2)) t gnus-group-asynchronous-p ((byte-code "\300\301!\207" [gnus-async-release-semaphore gnus-async-article-semaphore] 2)) natnump gnus-async-prefetched-article-entry gnus-async-set-buffer point-marker gnus-make-async-article-function gnus-message 9 "Prefetching article %d in group %s" gnus-request-article do-fetch group gnus-use-article-prefetch gnus-newsgroup-data bdata article d data n gnus-async-prefetch-article-p mark gnus-async-prefetch-article-buffer nntp-server-buffer nnheader-callback-function gnus-async-current-prefetch-group gnus-async-current-prefetch-article] 7 (#$ . 5134)])
#@29 Return a callback function.
(defalias 'gnus-make-async-article-function #[(group article mark summary next) "\305\306\307\310	\n\f\257E\207" [group article mark summary next lambda (arg) gnus-async-article-callback arg] 9 (#$ . 6777)])
#@62 Function called when an async article is done being fetched.
(defalias 'gnus-async-article-callback #[(arg group article mark summary next) "\212\306	\203[\307 \210\212\214\nd}\210\203%\310\f!\203%\214\nd}\210\311
\f\"\210)\312\313!\2030\313!\210\203;!\210*\314\216\315\316!\210\317\320\321\f
#\"\n\322 d\306\223\f
\257B)\211\205i\323\324!!)\204{\325\216\315\316!\210\306\211)\202\203\326\f\327$)\207" [gnus-async-current-prefetch-article arg mark gnus-agent group article nil gnus-async-set-buffer gnus-agent-group-covered-p gnus-agent-store-article fboundp gnus-html-prefetch-images ((byte-code "\300\301!\207" [gnus-async-release-semaphore gnus-async-article-semaphore] 2)) gnus-async-get-semaphore gnus-async-article-semaphore intern format "%s-%d" make-marker buffer-live-p get-buffer ((byte-code "\300\301!\207" [gnus-async-release-semaphore gnus-async-article-semaphore] 2)) gnus-async-prefetch-article t summary gnus-async-post-fetch-function gnus-async-hashtb gnus-async-article-alist buffer gnus-async-fetch-list next] 6 (#$ . 7022)])
#@54 Return non-nil if DATA represents an unread article.
(defalias 'gnus-async-unread-p #[(data) "A@	U\207" [data gnus-unread-mark] 2 (#$ . 8110)])
#@62 See whether we have ARTICLE from GROUP and put it in BUFFER.
(defalias 'gnus-async-request-fetched-article #[(group article buffer) "\247\205?	\n\232\203=\203\306!\210\307	\"\211\205>\212\310 \210\311
\f\211
A@)\fAA@#\210\312>\203<\313\f!\210)\314)\207" [article group gnus-async-current-prefetch-group gnus-async-current-prefetch-article entry buffer gnus-async-wait-for-article gnus-async-prefetched-article-entry gnus-async-set-buffer copy-to-buffer read gnus-async-delete-prefetched-entry t x gnus-prefetched-article-deletion-strategy] 5 (#$ . 8261)])
#@70 Wait until ARTICLE is no longer the currently-being-fetched article.
(defalias 'gnus-async-wait-for-article #[(article) "\212\306 \210p	;\203\307!\202\310\211\f\203;\f\211A@\211\203;\n\211A@)=\203\n@\310\211\204\205W\311!\312>\203K\202W\313\314!!\210\315\n	\"\310-p\310\316\211\205u\310\317\320\217\210\205u\321\322\323\"-\207" [buffer nntp-connection-alist entry process alist x gnus-async-set-buffer get-buffer nil process-status (open run) nntp-kill-buffer process-buffer delq 0 (byte-code "	=\203%\nT\305!\203\306\f\204\n\307U\203\310\311\312\"\210\313\202\305\207" [article gnus-async-current-prefetch-article tries proc nntp-have-messaged nntp-accept-process-output 0 3 gnus-message 5 "Waiting for async article..." t] 3) ((quit (byte-code "\302V\203\303\304\305\303\"\207" [tries gnus-async-current-prefetch-article 3 nil signal quit] 3))) gnus-message 5 "" tries nntp-have-messaged nntp-server-buffer proc] 5 (#$ . 8839)])
#@37 Delete ENTRY from buffer and alist.
(defalias 'gnus-async-delete-prefetched-entry #[(entry) "\303\304\305\217\210\306\216\307\310!\210\311	\"\312@\n\")\207" [entry gnus-async-article-alist gnus-async-hashtb nil (byte-code "\211A@)AA@|\210\211A@)\302\211\223\210AA@\302\211\223\207" [entry x nil] 4) ((error)) ((byte-code "\300\301!\207" [gnus-async-release-semaphore gnus-async-article-semaphore] 2)) gnus-async-get-semaphore gnus-async-article-semaphore delq unintern] 3 (#$ . 9838)])
#@66 Remove all articles belonging to GROUP from the prefetch buffer.
(defalias 'gnus-async-prefetch-remove-group #[(group) "\305!\2050\306	>\2050\212\307 \210\n\310\211\205/\f@\3118\232\203'\312!\210\fA\211\204\310+\207" [group gnus-prefetched-article-deletion-strategy gnus-async-article-alist entry --dolist-tail-- gnus-group-asynchronous-p exit gnus-async-set-buffer nil 3 gnus-async-delete-prefetched-entry] 4 (#$ . 10339)])
#@66 Return the entry for ARTICLE in GROUP if it has been prefetched.
(defalias 'gnus-async-prefetched-article-entry #[(group article) "\212\306 \210\307\310\311	#\n\"\236)\211\2030\f\211A@)\fAA@U\2030\312\313\314\217\210\315\f\"\312\2021\f)\207" [group article gnus-async-hashtb gnus-async-article-alist entry x gnus-async-set-buffer intern-soft format "%s-%d" nil (byte-code "\211A@)\302\211\223\210AA@\302\211\223\207" [entry x nil] 4) ((error)) delq] 6 (#$ . 10784)])
#@39 Prefetch the headers for group GROUP.
(defalias 'gnus-async-prefetch-headers #[(group) "\212\306	\205=\n\205=\307!\205=\f<\205=\310!\211\205=\311\312
\311\"\210\313 \210p\314\315\316\304BEE\317#**\207" [unread gnus-use-header-prefetch gnus-asynchronous group gnus-async-header-prefetched gnus-async-prefetch-headers-buffer nil gnus-group-asynchronous-p gnus-list-of-unread-articles t nnheader-set-temp-buffer erase-buffer lambda (arg) setq gnus-retrieve-headers nnheader-callback-function nntp-server-buffer gnus-fetch-old-headers] 7 (#$ . 11269)])
#@41 See whether we have prefetched headers.
(defalias 'gnus-async-retrieve-fetched-headers #[(articles group) "\2053\306	!\2053\n<\2053	\n@\232\2053\nA\232\2053\212\307\f\310\"\210\311 \210\312
ed#\210\313 \210\314)\310\207" [gnus-use-header-prefetch group gnus-async-header-prefetched articles gnus-async-prefetch-headers-buffer nntp-server-buffer gnus-group-asynchronous-p nnheader-set-temp-buffer t nntp-decode-text copy-to-buffer erase-buffer nil] 4 (#$ . 11844)])
(provide 'gnus-async)

MMCT - 2023