;ELC   
;;; Compiled
;;; in Emacs version 29.4
;;; with all optimizations.



(byte-code "\300\301!\210\300\302!\210\300\303!\210\304\305\306\307\310DD\311\312\313\314\315\316\317&	\210\304\320\306\307\321DD\322\312\313\314\315\316\317&	\207" [require browse-url url-parse url-file custom-declare-variable url-queue-parallel-processes funcall function #[0 "\300\207" [6] 1 #1=""] "The number of concurrent processes." :version "24.1" :type natnum :group url url-queue-timeout #[0 "\300\207" [5] 1 #1#] "How long to let a job live once it's started (in seconds)."] 10)
(defvar url-queue nil)
(defvar url-queue-progress-timer nil)#@68 compiler-macro for inlining `url-queue-p'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'url-queue-p--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block url-queue-p (and (memq (type-of cl-x) cl-struct-url-queue-tags) t)) nil] 9 (#$ . 634)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop url-queue-p compiler-macro url-queue-p--cmacro] 4)#@13 

(fn CL-X)
(defalias 'url-queue-p #[257 "\301!>\205	 \302\207" [cl-struct-url-queue-tags type-of t] 3 (#$ . 1014)])
(byte-code "\300\301\302\303#\300\301\304\305#\306\307\310\301#\300\207" [function-put url-queue-p side-effect-free error-free pure t define-symbol-prop url-queue cl-deftype-satisfies] 6)#@70 compiler-macro for inlining `url-queue-url'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'url-queue-url--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block url-queue-url (progn (or (url-queue-p cl-x) (signal 'wrong-type-argument (list 'url-queue cl-x))) (aref cl-x 1))) nil] 9 (#$ . 1326)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop url-queue-url compiler-macro url-queue-url--cmacro] 4)#@58 Access slot "url" of `url-queue' struct CL-X.

(fn CL-X)
(defalias 'url-queue-url #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-url-queue-tags type-of signal wrong-type-argument url-queue 1] 5 (#$ . 1761)])
(byte-code "\300\301\302\303#\300\207" [function-put url-queue-url side-effect-free t] 4)#@75 compiler-macro for inlining `url-queue-callback'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'url-queue-callback--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block url-queue-callback (progn (or (url-queue-p cl-x) (signal 'wrong-type-argument (list 'url-queue cl-x))) (aref cl-x 2))) nil] 9 (#$ . 2084)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop url-queue-callback compiler-macro url-queue-callback--cmacro] 4)#@63 Access slot "callback" of `url-queue' struct CL-X.

(fn CL-X)
(defalias 'url-queue-callback #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-url-queue-tags type-of signal wrong-type-argument url-queue 2] 5 (#$ . 2544)])
(byte-code "\300\301\302\303#\300\207" [function-put url-queue-callback side-effect-free t] 4)#@73 compiler-macro for inlining `url-queue-cbargs'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'url-queue-cbargs--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block url-queue-cbargs (progn (or (url-queue-p cl-x) (signal 'wrong-type-argument (list 'url-queue cl-x))) (aref cl-x 3))) nil] 9 (#$ . 2882)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop url-queue-cbargs compiler-macro url-queue-cbargs--cmacro] 4)#@61 Access slot "cbargs" of `url-queue' struct CL-X.

(fn CL-X)
(defalias 'url-queue-cbargs #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-url-queue-tags type-of signal wrong-type-argument url-queue 3] 5 (#$ . 3332)])
(byte-code "\300\301\302\303#\300\207" [function-put url-queue-cbargs side-effect-free t] 4)#@74 compiler-macro for inlining `url-queue-silentp'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'url-queue-silentp--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block url-queue-silentp (progn (or (url-queue-p cl-x) (signal 'wrong-type-argument (list 'url-queue cl-x))) (aref cl-x 4))) nil] 9 (#$ . 3664)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop url-queue-silentp compiler-macro url-queue-silentp--cmacro] 4)#@62 Access slot "silentp" of `url-queue' struct CL-X.

(fn CL-X)
(defalias 'url-queue-silentp #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-url-queue-tags type-of signal wrong-type-argument url-queue 4] 5 (#$ . 4119)])
(byte-code "\300\301\302\303#\300\207" [function-put url-queue-silentp side-effect-free t] 4)#@73 compiler-macro for inlining `url-queue-buffer'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'url-queue-buffer--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block url-queue-buffer (progn (or (url-queue-p cl-x) (signal 'wrong-type-argument (list 'url-queue cl-x))) (aref cl-x 5))) nil] 9 (#$ . 4454)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop url-queue-buffer compiler-macro url-queue-buffer--cmacro] 4)#@61 Access slot "buffer" of `url-queue' struct CL-X.

(fn CL-X)
(defalias 'url-queue-buffer #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-url-queue-tags type-of signal wrong-type-argument url-queue 5] 5 (#$ . 4904)])
(byte-code "\300\301\302\303#\300\207" [function-put url-queue-buffer side-effect-free t] 4)#@77 compiler-macro for inlining `url-queue-start-time'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'url-queue-start-time--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block url-queue-start-time (progn (or (url-queue-p cl-x) (signal 'wrong-type-argument (list 'url-queue cl-x))) (aref cl-x 6))) nil] 9 (#$ . 5236)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop url-queue-start-time compiler-macro url-queue-start-time--cmacro] 4)#@65 Access slot "start-time" of `url-queue' struct CL-X.

(fn CL-X)
(defalias 'url-queue-start-time #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-url-queue-tags type-of signal wrong-type-argument url-queue 6] 5 (#$ . 5706)])
(byte-code "\300\301\302\303#\300\207" [function-put url-queue-start-time side-effect-free t] 4)#@80 compiler-macro for inlining `url-queue-pre-triggered'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'url-queue-pre-triggered--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block url-queue-pre-triggered (progn (or (url-queue-p cl-x) (signal 'wrong-type-argument (list 'url-queue cl-x))) (aref cl-x 7))) nil] 9 (#$ . 6050)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop url-queue-pre-triggered compiler-macro url-queue-pre-triggered--cmacro] 4)#@68 Access slot "pre-triggered" of `url-queue' struct CL-X.

(fn CL-X)
(defalias 'url-queue-pre-triggered #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-url-queue-tags type-of signal wrong-type-argument url-queue 7] 5 (#$ . 6535)])
(byte-code "\300\301\302\303#\300\207" [function-put url-queue-pre-triggered side-effect-free t] 4)#@83 compiler-macro for inlining `url-queue-inhibit-cookiesp'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'url-queue-inhibit-cookiesp--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block url-queue-inhibit-cookiesp (progn (or (url-queue-p cl-x) (signal 'wrong-type-argument (list 'url-queue cl-x))) (aref cl-x 8))) nil] 9 (#$ . 6888)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop url-queue-inhibit-cookiesp compiler-macro url-queue-inhibit-cookiesp--cmacro] 4)#@71 Access slot "inhibit-cookiesp" of `url-queue' struct CL-X.

(fn CL-X)
(defalias 'url-queue-inhibit-cookiesp #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-url-queue-tags type-of signal wrong-type-argument url-queue 8] 5 (#$ . 7388)])
(byte-code "\300\301\302\303#\300\207" [function-put url-queue-inhibit-cookiesp side-effect-free t] 4)#@81 compiler-macro for inlining `url-queue-context-buffer'.

(fn CL-WHOLE-ARG CL-X)
(defalias 'url-queue-context-buffer--cmacro #[514 "\300\301\302\303\211\211&\207" [cl--defsubst-expand (cl-x) (cl-block url-queue-context-buffer (progn (or (url-queue-p cl-x) (signal 'wrong-type-argument (list 'url-queue cl-x))) (aref cl-x 9))) nil] 9 (#$ . 7750)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop url-queue-context-buffer compiler-macro url-queue-context-buffer--cmacro] 4)#@69 Access slot "context-buffer" of `url-queue' struct CL-X.

(fn CL-X)
(defalias 'url-queue-context-buffer #[257 "\301!>\204 \302\303\304D\"\210\211\305H\207" [cl-struct-url-queue-tags type-of signal wrong-type-argument url-queue 9] 5 (#$ . 8240)])
(byte-code "\300\301\302\303#\304\305\306\"\207" [function-put url-queue-context-buffer side-effect-free t defalias copy-url-queue copy-sequence] 4)#@169 compiler-macro for inlining `make-url-queue'.

(fn CL-WHOLE &cl-quote &key URL CALLBACK CBARGS SILENTP BUFFER START-TIME PRE-TRIGGERED INHIBIT-COOKIESP CONTEXT-BUFFER)
(defalias 'make-url-queue--cmacro #[385 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\300\305\"A@\300\306\"A@\300\307\"A@\300\310\"A@\300	\311\"A@	\211\203r \211@\312>\203Z \211A\204R \313\314@\"\210\211AA\262\202< \315>A@\203i \316\262\202< \313\317@\"\210\202< \210\320\321\322\316\316&\207" [plist-member :url :callback :cbargs :silentp :buffer :start-time :pre-triggered :inhibit-cookiesp :context-buffer (:url :callback :cbargs :silentp :buffer :start-time :pre-triggered :inhibit-cookiesp :context-buffer :allow-other-keys) error "Missing argument for %s" :allow-other-keys nil "Keyword argument %s not one of (:url :callback :cbargs :silentp :buffer :start-time :pre-triggered :inhibit-cookiesp :context-buffer)" cl--defsubst-expand (url callback cbargs silentp buffer start-time pre-triggered inhibit-cookiesp context-buffer) (cl-block make-url-queue (record 'url-queue url callback cbargs silentp buffer start-time pre-triggered inhibit-cookiesp context-buffer))] 26 (#$ . 8645)])
(byte-code "\300\301\302\303#\300\207" [define-symbol-prop make-url-queue compiler-macro make-url-queue--cmacro] 4)#@149 Constructor for objects of type `url-queue'.

(fn &key URL CALLBACK CBARGS SILENTP BUFFER START-TIME PRE-TRIGGERED INHIBIT-COOKIESP CONTEXT-BUFFER)
(defalias 'make-url-queue #[128 "\300\301\"A@\300\302\"A@\300\303\"A@\300\304\"A@\300\305\"A@\300\306\"A@\300\307\"A@\300\310\"A@\300	\311\"A@	\211\203r \211@\312>\203Z \211A\204R \313\314@\"\210\211AA\262\202< \315>A@\203i \316\262\202< \313\317@\"\210\202< \210\320\321\n\n\n\n\n\n\n\n\n&\n\207" [plist-member :url :callback :cbargs :silentp :buffer :start-time :pre-triggered :inhibit-cookiesp :context-buffer (:url :callback :cbargs :silentp :buffer :start-time :pre-triggered :inhibit-cookiesp :context-buffer :allow-other-keys) error "Missing argument for %s" :allow-other-keys nil "Keyword argument %s not one of (:url :callback :cbargs :silentp :buffer :start-time :pre-triggered :inhibit-cookiesp :context-buffer)" record url-queue] 21 (#$ . 9969)])
(byte-code "\300\301\302\303#\304\305\306\307\310\306\311\312\305\303&	\207" [function-put make-url-queue side-effect-free t cl-struct-define url-queue nil cl-structure-object record ((cl-tag-slot) (url) (callback) (cbargs) (silentp) (buffer) (start-time) (pre-triggered) (inhibit-cookiesp) (context-buffer)) cl-struct-url-queue-tags] 11)#@384 Retrieve URL asynchronously and call CALLBACK with CBARGS when finished.
This is like `url-retrieve' (which see for details of the arguments),
but with limits on the degree of parallelism.  The variable
`url-queue-parallel-processes' sets the number of concurrent processes.
The variable `url-queue-timeout' sets a timeout.

(fn URL CALLBACK &optional CBARGS SILENT INHIBIT-COOKIES)
(defalias 'url-queue-retrieve #[1282 "\301\302\300\303\211\211p&\nC\"\304 \207" [url-queue append record nil url-queue-setup-runners] 18 (#$ . 11249)])
(defalias 'url-queue-setup-runners #[0 "\304\305\211\203H \211@\306!	>\204 \307\310\300D\"\210\211\311H\2043 \306!	>\204- \307\310\300D\"\210\211\312H\203: T\262\202A \204A \211\262A\266\202\202 \210\211\205y \nW\205y \306!	>\204b \307\310\300D\"\210\211\312\313I\210\314\315\305\316#\210?\205y \314\317\211\320#\211\207" [url-queue cl-struct-url-queue-tags url-queue-parallel-processes url-queue-progress-timer 0 nil type-of signal wrong-type-argument 6 7 t run-with-idle-timer 0.01 url-queue-run-queue 1 url-queue-check-progress] 8])
(defalias 'url-queue-run-queue #[0 "\303 \210\304\305\211\2036 \211@\306!	>\204 \307\310\300D\"\210\211\311H\203( T\262\202/ \204/ \211\262A\266\202\202 \210\211\205Y \nW\205Y \306!	>\204P \307\310\300D\"\210\211\311\312 I\210\313!\207" [url-queue cl-struct-url-queue-tags url-queue-parallel-processes url-queue-prune-old-entries 0 nil type-of signal wrong-type-argument 6 float-time url-queue-start-retrieve] 8])
(defalias 'url-queue-check-progress #[0 "\205 	\203 \302 \207\303!\210\304\211\207" [url-queue-progress-timer url-queue url-queue-run-queue cancel-timer nil] 2])#@19 

(fn STATUS JOB)
(defalias 'url-queue-callback-function #[514 "p\302\"@\303=\203\" A@A@\304=\203\" \305\306\307A@\233\310\"!\210\311 \210\312!\2040 \313\314!q\210\315\316!	>\204@ \317\320\300D\"\210\321H\316!	>\204T \317\320\300D\"\210\307HB\"\207" [url-queue cl-struct-url-queue-tags delq :error connection-failed url-queue-remove-jobs-from-host plist-get 3 :host url-queue-run-queue buffer-live-p generate-new-buffer " *temp*" apply type-of signal wrong-type-argument 2] 10 (#$ . 12949)])#@13 

(fn HOST)
(defalias 'url-queue-remove-jobs-from-host #[257 "\303\211\203A \211@\304\305!	>\204 \306\307\300D\"\210\310H!\305!\n>\204+ \306\307\311D\"\210\211\312H\262\232\203: \211B\262A\266\202\202 \210\211\211\205Y \211@\313!\210\314\"A\266\202\202C \207" [url-queue cl-struct-url-queue-tags cl-struct-url-tags nil url-generic-parse-url type-of signal wrong-type-argument 1 url 4 url-queue-kill-job delq] 9 (#$ . 13461)])#@12 

(fn JOB)
(defalias 'url-queue-start-retrieve #[257 "\303!>\204 \304\305\306D\"\210\211\307\3101\221 r\311\303!>\204' \304\305\306D\"\210\312H!\203C \303!>\204= \304\305\306D\"\210\312H\202D pq\210\313\211\314\303!>\204[ \304\305\306D\"\210\315H\316C\303!>\204r \304\305\306	D\"\210\317H\303!>\204\207 \304\305\306\nD\"\210\320H%+0\202\223 \210\321I\207" [cl-struct-url-queue-tags url-allow-non-local-files url-request-noninteractive type-of signal wrong-type-argument url-queue 5 (error) buffer-live-p 9 t url-retrieve 1 url-queue-callback-function 4 8 nil] 12 (#$ . 13910)])
(defalias 'url-queue-prune-old-entries #[0 "\303\211\203D \211@\304!	>\204 \305\306\300D\"\210\211\307H\203= \310\n\311\304!	>\2040 \305\306\300D\"\210\307H!\"\203= \211B\262A\266\202\202 \210\211\211\205\\ \211@\312!\210\313\"A\266\202\202F \207" [url-queue cl-struct-url-queue-tags url-queue-timeout nil type-of signal wrong-type-argument 6 time-less-p time-since url-queue-kill-job delq] 10])#@12 

(fn JOB)
(defalias 'url-queue-kill-job #[257 "\301\302!>\204 \303\304\305D\"\210\306H!\203H \307\310\302!>\204( \303\304\305D\"\210\306H!\211\262\203G \311\312\"\210\3131C \314!0\210\202 \210\202 \210r\301\302!>\204Y \303\304\305D\"\210\306H!\203\214 \315\302!>\204p \303\304\305D\"\210\306H!\203\214 \302!>\204\206 \303\304\305D\"\210\211\306H\202\217 \316\317!q\210\320\302!>\204\241 \303\304\305D\"\210\321H\322\323\324\325ED\302!>\204\272 \303\304\305D\"\210\326HB\")\207" [cl-struct-url-queue-tags bufferp type-of signal wrong-type-argument url-queue 5 nil get-buffer-process set-process-sentinel ignore (error) delete-process buffer-live-p generate-new-buffer " *temp*" apply 2 :error error url-queue-timeout "Queue timeout exceeded" 3] 8 (#$ . 14939)])
(provide 'url-queue)
