;ELC ;;; Compiled ;;; in Emacs version 28.0.50 ;;; with all optimizations. #@3 . (defalias 'tramp-unload-file-name-handlers #[0 "\300\207" ["."] 1 (#$ . 86)]) (byte-code "\300\301!\210\300\302!\210\300\303!\210\300\304!\210\300\305!\210\300\306!\207" [require auth-source format-spec ls-lisp parse-time shell subr-x] 2) #@41 The Emacs version used for compilation. (defconst tramp-compat-emacs-compiled-version "28.0.50" (#$ . 333)) (byte-code "\303 !@U\204\304\305 \n#\210\303\207" [emacs-major-version tramp-compat-emacs-compiled-version emacs-version version-to-list warn "Tramp has been compiled with Emacs %s, this is Emacs %s"] 4) #@108 Call FUNCTION with ARGUMENTS if it exists. Do not raise compiler warnings. (fn FUNCTION &rest ARGUMENTS) (defalias 'tramp-compat-funcall '(macro . #[385 "\300\301D\302\303BBDE\207" [when functionp with-no-warnings funcall] 8 (#$ . 655)])) #@102 Return name of directory for temporary files. It is the default value of `temporary-file-directory'. (defalias 'tramp-compat-temporary-file-directory #[0 "\300\301\302N@\303\"\207" [eval temporary-file-directory standard-value t] 3 (#$ . 906)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put tramp-compat-temporary-file-directory speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@57 Generate a local temporary file name (compat function). (defalias 'tramp-compat-make-temp-name #[0 "\301\302\303\304\305N@\306\"\"!\207" [tramp-temp-name-prefix make-temp-name expand-file-name eval temporary-file-directory standard-value t] 6 (#$ . 1320)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put tramp-compat-make-temp-name speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@114 Create a local temporary file (compat function). Add the extension of F, if existing. (fn F &optional DIR-FLAG) (defalias 'tramp-compat-make-temp-file #[513 "\301\302\303\304\305N@\306\"\"\307\306\"#\207" [tramp-temp-name-prefix make-temp-file expand-file-name eval temporary-file-directory standard-value t file-name-extension] 8 (#$ . 1738)]) (byte-code "\300\301\302\303#\304\301\305\306#\210\307\310\311\312!\203\312\202\313\"\210\307\314\311\315!\203&\315\202'\316\"\210\307\317\311\320!\2035\320\2026\321\"\210\307\322\311\323!\203D\323\202E\324\"\210\307\325\311\326!\203S\326\202T\327\"\210\307\330\311\331!\203b\331\202c\332\"\210\307\333\311\334!\203q\334\202r\335\"\210\307\336\311\337!\203\200\337\202\201\340\"\210\307\341\311\342!\203\217\342\202\220\343\"\210\307\344\311\345!\203\236\345\202\237\346\"\207" [function-put tramp-compat-make-temp-file speed -1 put byte-optimizer byte-compile-inline-expand defalias tramp-compat-temporary-file-directory-function fboundp temporary-file-directory tramp-handle-temporary-file-directory tramp-compat-file-attribute-type file-attribute-type #[257 "\211@\207" #1=[] 2 "The type field in ATTRIBUTES returned by `file-attributes'.\nThe value is either t for directory, string (name linked to) for\nsymbolic link, or nil.\n\n(fn ATTRIBUTES)"] tramp-compat-file-attribute-link-number file-attribute-link-number #[257 "\211A@\207" #1# 2 "Return the number of links in ATTRIBUTES returned by `file-attributes'.\n\n(fn ATTRIBUTES)"] tramp-compat-file-attribute-user-id file-attribute-user-id #[257 "\3008\207" [2] 3 "The UID field in ATTRIBUTES returned by `file-attributes'.\nThis is either a string or a number. If a string value cannot be\nlooked up, a numeric value, either an integer or a float, is\nreturned.\n\n(fn ATTRIBUTES)"] tramp-compat-file-attribute-group-id file-attribute-group-id #[257 "\3008\207" [3] 3 "The GID field in ATTRIBUTES returned by `file-attributes'.\nThis is either a string or a number. If a string value cannot be\nlooked up, a numeric value, either an integer or a float, is\nreturned.\n\n(fn ATTRIBUTES)"] tramp-compat-file-attribute-access-time file-attribute-access-time #[257 "\3008\207" [4] 3 "The last access time in ATTRIBUTES returned by `file-attributes'.\nThis a Lisp timestamp in the style of `current-time'.\n\n(fn ATTRIBUTES)"] tramp-compat-file-attribute-modification-time file-attribute-modification-time #[257 "\3008\207" [5] 3 "The modification time in ATTRIBUTES returned by `file-attributes'.\nThis is the time of the last change to the file's contents, and\nis a Lisp timestamp in the style of `current-time'.\n\n(fn ATTRIBUTES)"] tramp-compat-file-attribute-status-change-time file-attribute-status-change-time #[257 "\3008\207" [6] 3 "The status modification time in ATTRIBUTES returned by `file-attributes'.\nThis is the time of last change to the file's attributes: owner\nand group, access mode bits, etc., and is a Lisp timestamp in the\nstyle of `current-time'.\n\n(fn ATTRIBUTES)"] tramp-compat-file-attribute-size file-attribute-size #[257 "\3008\207" [7] 3 "The size (in bytes) in ATTRIBUTES returned by `file-attributes'.\nIf the size is too large for a fixnum, this is a bignum in Emacs 27\nand later, and is a float in Emacs 26 and earlier.\n\n(fn ATTRIBUTES)"] tramp-compat-file-attribute-modes file-attribute-modes #[257 "\3008\207" [8] 3 "The file modes in ATTRIBUTES returned by `file-attributes'.\nThis is a string of ten letters or dashes as in ls -l.\n\n(fn ATTRIBUTES)"]] 5) #@48 The error symbol for the `file-missing' error. (defconst tramp-file-missing (byte-code "\300\301N\203\300\207\302\207" [file-missing error-conditions file-error] 2) (#$ . 5280)) #@47 Emit the `file-missing' error. (fn VEC FILE) (defalias 'tramp-compat-file-missing #[514 "\301\302N\203\f\303#\207\303\304$\207" [tramp-file-missing file-missing error-conditions tramp-error "No such file or directory: %s"] 7 (#$ . 5466)]) (byte-code "\300\301\302\303#\304\301\305\306#\210\307\310\311\312!\203\312\202\313\"\210\307\314\311\315!\2034\316\317!\205+\317\315!\320\232\2034\315\2025\321\"\210\307\322\311\323!\203Q\316\317!\205H\317\323!\324\232\203Q\323\202R\325\"\210\307\326\311\327!\203n\316\317!\205e\317\327!\330\232\203n\327\202o\331\"\207" [function-put tramp-compat-file-missing speed -1 put byte-optimizer byte-compile-inline-expand defalias tramp-compat-file-local-name fboundp file-local-name #[257 "\300\301\"\206\211\207" [file-remote-p localname] 4 "Return the local name component of NAME.\nIt returns a file name which can be used directly as argument of\n`process-file', `start-file-process', or `shell-command'.\n\n(fn NAME)"] tramp-compat-file-name-quoted-p file-name-quoted-p functionp func-arity (1 . 2) #[513 "\211?\205\301\302\303!\")\207" [file-name-handler-alist string-prefix-p "/:" tramp-compat-file-local-name] 6 "Whether NAME is quoted with prefix \"/:\".\nIf NAME is a remote file name and TOP is nil, check the local part of NAME.\n\n(fn NAME &optional TOP)"] tramp-compat-file-name-quote file-name-quote (1 . 2) #[513 "\211?\205\301\"\203\202\302!\303\304!Q)\207" [file-name-handler-alist tramp-compat-file-name-quoted-p file-remote-p "/:" tramp-compat-file-local-name] 6 "Add the quotation prefix \"/:\" to file NAME.\nIf NAME is a remote file name and TOP is nil, the local part of NAME is quoted.\n\n(fn NAME &optional TOP)"] tramp-compat-file-name-unquote file-name-unquote (1 . 2) #[513 "\211?\205\301!\302\"\203\"\211G\303U\203\304\202 \211\303\305O\262\306!P)\207" [file-name-handler-alist tramp-compat-file-local-name tramp-compat-file-name-quoted-p 2 "/" nil file-remote-p] 6 "Remove quotation prefix \"/:\" from file NAME.\nIf NAME is a remote file name and TOP is nil, the local part of\nNAME is unquoted.\n\n(fn NAME &optional TOP)"]] 5) #@40 Return proper value of `tramp-syntax'. (defalias 'tramp-compat-tramp-syntax #[0 "\301\267\202\n\302\207\303\207\207" [tramp-syntax #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (ftp 6 sep 8)) default separate] 2 (#$ . 7627)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put tramp-compat-tramp-syntax speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@30 Whether to use url-tramp.el. (defconst tramp-compat-use-url-tramp-p (fboundp 'temporary-file-directory) (#$ . 8052)) #@55 The main thread of Emacs, if compiled --with-threads. (defconst tramp-compat-main-thread (byte-code "\301\300!\205\207" [main-thread boundp] 2) (#$ . 8175)) #@59 The current thread, or nil if compiled --without-threads. (defalias 'tramp-compat-current-thread #[0 "\300\301!\205\301 \207" [functionp current-thread] 2 (#$ . 8341)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put tramp-compat-current-thread speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@34 Yield the CPU to another thread. (defalias 'tramp-compat-thread-yield #[0 "\300\301!\205\301 \207" [functionp thread-yield] 2 (#$ . 8671)]) (byte-code "\300\301\302\303#\304\301\305\306#\207" [function-put tramp-compat-thread-yield speed -1 put byte-optimizer byte-compile-inline-expand] 5) #@142 Invoke BODY with MUTEX held, releasing MUTEX when done. This is the simplest safe way to acquire and release a mutex. (fn MUTEX &rest BODY) (defalias 'tramp-compat-with-mutex '(macro . #[385 "\300\301\302BBBBB\207" [if (fboundp 'with-mutex) with-mutex] 7 (#$ . 8971)])) (byte-code "\301\302\303\304#\305\302\306\307#\210\310\311\312\313!\203\313\202\314\"\210\310\315\312\316!\203&\316\202'\317\"\210\310\320\312\321!\2035\321\2026\322\"\210\310\323\324\325!\205C\325\326!\327\232\203L\326\202M\330\"\210\310\331\324\325!\205Z\325\332!\333\232\203c\332\202d\334\"\210\310\335\324\325!\205q\325\336!\337\232\203z\336\202{\340\"\210\310\341\324\325!\205\210\325\342!\343\232\203\221\342\202\222\344\"\210\310\345\324\325!\205\237\325\346!\347\232\203\250\346\202\251\350\"\210\310\351\324\325!\205\266\325\352!\353\232\203\277\352\202\300\354\"\210\310\355\312\356!\203\316\356\202\317\357\"\210\310\360\312\361!\203\335\361\202\336\362\"\210\310\363\312\364!\203\354\364\202\355\365\"\210\366\367\324#\211\203 \211@\305\370!\371\307#\210A\266\202\202\364\210\372\373\374\"\210\375\376!\207" [obarray function-put tramp-compat-with-mutex lisp-indent-function 1 put edebug-form-spec t defalias tramp-compat-exec-path fboundp exec-path #[0 "\302\301\"\211\203\f\211\301!\207 \207" [default-directory exec-path find-file-name-handler] 3 "List of directories to search programs to run in remote subprocesses."] tramp-compat-time-equal-p time-equal-p #[514 "\206\300 \206\f\300 \232\207" [current-time] 4 "Return non-nil if time value T1 is equal to time value T2.\nA nil value for either argument stands for the current time.\n\n(fn T1 T2)"] tramp-compat-flatten-tree flatten-tree #[257 "\300C\262\211A\262\242\211:\203\211@ABB\262\202%\211\203%\211B\262\262\204\211\237\207" [nil] 6 "Take TREE and \"flatten\" it.\n\n(fn TREE)"] tramp-compat-progress-reporter-update functionp func-arity progress-reporter-update (1 . 3) #[769 "\300\247\203@Y\205\301#\207" [nil progress-reporter-do-update] 10 "\n\n(fn REPORTER &optional VALUE SUFFIX)"] tramp-compat-file-modes file-modes (1 . 2) #[513 "\300!\207" [file-modes] 4 "\n\n(fn FILENAME &optional FLAG)"] tramp-compat-set-file-modes set-file-modes (2 . 3) #[770 "\300\"\207" [set-file-modes] 6 "\n\n(fn FILENAME MODE &optional FLAG)"] tramp-compat-set-file-times set-file-times (1 . 3) #[769 "\300\"\207" [set-file-times] 6 "\n\n(fn FILENAME &optional TIMESTAMP FLAG)"] tramp-compat-directory-files directory-files (1 . 5) #[1281 "\300$\207" [directory-files] 10 "\n\n(fn DIRECTORY &optional FULL MATCH NOSORT COUNT)"] tramp-compat-directory-files-and-attributes directory-files-and-attributes (1 . 6) #[1537 "\300%\207" [directory-files-and-attributes] 12 "\n\n(fn DIRECTORY &optional FULL MATCH NOSORT ID-FORMAT COUNT)"] tramp-compat-directory-empty-p directory-empty-p #[257 "\301!\205\302\303\304\305%?\207" [directory-files-no-dot-files-regexp file-directory-p tramp-compat-directory-files nil t 1] 7 "\n\n(fn DIR)"] tramp-compat-null-device null-device #[0 "\302!\203\303\207 \207" [default-directory null-device tramp-tramp-file-p "/dev/null"] 2] tramp-compat-string-replace string-replace #[771 "\300\301!#\207" [replace-regexp-in-string regexp-quote] 7 "\n\n(fn FROMSTRING TOSTRING INSTRING)"] all-completions "tramp-compat-" intern tramp-suppress-trace add-hook tramp-unload-hook #[0 "\300\301\302\"\210\300\303\302\"\207" [unload-feature tramp-loaddefs force tramp-compat] 3] provide tramp-compat] 7)