;ELC ;;; Compiled by cyd@localhost on Mon Apr 23 22:20:56 2007 ;;; from file /home/cyd/emacs/lisp/loadhist.el ;;; in Emacs version 22.0.99 ;;; 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 "`loadhist.el' was compiled for Emacs 19.29 or later")) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; #@159 Return the file and list of definitions associated with FEATURE. The value is actually the element of `load-history' for the file that did (provide FEATURE). (defalias 'feature-symbols #[(feature) "\300\301\215\207" [foundit (byte-code "\301\302\"\210\303\207" [load-history mapc #[(x) "\302B A\235\205 \303\304 \"\207" [feature x provide throw foundit] 3] nil] 3)] 2 (#$ . 564)]) #@282 Return the file name from which a given FEATURE was loaded. Actually, return the load argument, if any; this is sometimes the name of a Lisp file without an extension. If the feature came from an `eval-buffer' on a buffer with no associated file, or an `eval-region', return nil. (defalias 'feature-file #[(feature) "\301!\204 \302\303\"\207\304!@\207" [feature featurep error "%S is not a currently loaded feature" feature-symbols] 3 (#$ . 955)]) #@167 Return the `load-history' element for FILE. FILE can be a file name, or a library name. A library name is equivalent to the file name that `load-library' would load. (defalias 'file-loadhist-lookup #[(file) "\305 \"\211\204!\306 \307 #\211\203 \f\232\204 \305\f \"A)\n)\207" [file load-history symbols load-path absname assoc locate-file get-load-suffixes] 5 (#$ . 1415)]) #@186 Return the list of features provided by FILE as it was loaded. FILE can be a file name, or a library name. A library name is equivalent to the file name that `load-library' would load. (defalias 'file-provides #[(file) "\303!\304\305\306\n\"\210 *\207" [file provides symbols file-loadhist-lookup nil mapc #[(x) ":\205@\302=\205A B\211\207" [x provides provide] 2]] 3 (#$ . 1804)]) #@186 Return the list of features required by FILE as it was loaded. FILE can be a file name, or a library name. A library name is equivalent to the file name that `load-library' would load. (defalias 'file-requires #[(file) "\303!\304\305\306\n\"\210 *\207" [file requires symbols file-loadhist-lookup nil mapc #[(x) ":\205@\302=\205A B\211\207" [x requires require] 2]] 3 (#$ . 2204)]) #@43 Return the set intersection of two lists. (defalias 'file-set-intersect #[(p q) "\305 \305\211\203 @\211\f>\203\nB A\211\204\n\305*\210)\207" [ret p x #1=#:--cl-dolist-temp-- q nil] 3 (#$ . 2603)]) (put 'file-set-intersect 'byte-optimizer 'byte-compile-inline-expand) #@210 Return the list of loaded libraries that depend on FILE. This can include FILE itself. FILE can be a file name, or a library name. A library name is equivalent to the file name that `load-library' would load. (defalias 'file-dependents #[(file) "\306!\307 \307\211\203Y @\n\310\f@! \n\307 \n\307\211\f\203A\f@\211 >\2038\f B \fA\211\f\204'\307 *\210 +\203R\f@ B A\211\204\307 *\210 *\207" [file dependents provides load-history x #1=#:--cl-dolist-temp-- file-provides nil file-requires q p ret #2=#:--cl-dolist-temp--] 4 (#$ . 2893)]) #@154 Read feature name from the minibuffer, prompting with string PROMPT. If optional second arg LOADED-P is non-nil, the feature must be loaded from a file. (defalias 'read-feature #[(prompt &optional loaded-p) "\303\304\305 B\n\205 \306\n$!\207" [prompt features loaded-p intern completing-read nil #[(f) "\205\301!\207" [f feature-file] 2]] 6 (#$ . 3467)]) (defvaralias 'loadhist-hook-functions 'unload-feature-special-hooks) #@215 A list of special hooks from Info node `(elisp)Standard Hooks'. These are symbols with hook-type values whose names don't end in `-hook' or `-hooks', from which `unload-feature' tries to remove pertinent symbols. (defvar unload-feature-special-hooks '(after-change-functions after-insert-file-functions auto-fill-function before-change-functions blink-paren-function buffer-access-fontify-functions command-line-functions comment-indent-function kill-buffer-query-functions kill-emacs-query-functions lisp-indent-function mouse-position-function redisplay-end-trigger-functions temp-buffer-show-function window-scroll-functions window-size-change-functions write-region-annotate-functions) (#$ . 3904)) #@160 List of features of the package being unloaded. This is meant to be used by FEATURE-unload-hook hooks, see the documentation of `unload-feature' for details. (defvar unload-hook-features-list nil (#$ . 4615)) #@756 Unload the library that provided FEATURE, restoring all its autoloads. If the feature is required by any other loaded code, and prefix arg FORCE is nil, raise an error. This function tries to undo modifications made by the package to hooks. Packages may define a hook FEATURE-unload-hook that is called instead of the normal heuristics for doing this. Such a hook should undo all the relevant global state changes that may have been made by loading the package or executing functions in it. It has access to the package's feature list (before anything is unbound) in the variable `unload-hook-features-list' and could remove features from it in the event that the package has done something normally-ill-advised, such as redefining an Emacs function. (defalias 'unload-feature #[(feature &optional force) "\306!\204 \307\310\311!\"\210 \204+\312!\313\n\314\315\n!!\"\211\203*\307\316\317 !\n#\210*\320!\211\211A@\321\322\311!\323P!\211.\203L\324.!\210\202\201\325\326!\210\f\321/\2110\203\2000@\211/\242\327=\203w/A\330N\204w\331/A1\"10A\2110\204Z*\332\333!\203\252\f\3212\2113\203\2513@\21129\203\240\3332!\2103A\2113\204\221*\f\3214\2115\203\2365@\2114:\203:4@\334=\203\322\3354A6\"6\202\225\3364@\337\"\2034A7\3327!\203\332\340!\203\362\3407!\2107\330N\2118\2037 =\2037\3308BM\210\202\3417!\210))\202\225\3364@\342\"\203(4A\202\225\3364@\343\"\204\225\344\3454\"\210\202\225\346 \3219\211:\203s:@9r9q\210\3474!\203d\3504J!\203d\3514J!\210\3524!\210):A\211:\204E*\3474!\203\211\3504J!\203\211\3514J!\210\3534!\204\225\3544!\2105A\2115\204\264*\335\355\n;\";\";,\321\207" [feature force file dependents unload-hook-features-list restore-autoload featurep error "%s is not a currently loaded feature" symbol-name feature-file delete copy-sequence file-dependents "Loaded libraries %s depend on %s" prin1-to-string feature-symbols nil intern-soft "-unload-hook" run-hooks mapatoms #[(x) "\305!\205CJ:\203\306\307\310!\"\204 >\205C\n\311\211\203A\f@\211\242\312=\203: A\313N\204:\314 A\"\210\fA\211\204#*\311\207" [x unload-feature-special-hooks unload-hook-features-list y #1=#:--cl-dolist-temp-- boundp string-match "-hooks?\\'" symbol-name nil defun autoload remove-hook] 4] defun autoload rassq-delete-all fboundp elp-restore-function provide delq memql (defun autoload) ad-unadvise fmakunbound (t) (require defface) message "Unexpected element %s in load-history" buffer-list boundp timerp cancel-timer kill-local-variable local-variable-if-set-p makunbound assoc unload-hook y #2=#:--cl-dolist-temp-- auto-mode-alist elt #3=#:--cl-dolist-temp-- x #4=#:--cl-dolist-temp-- features fun aload buf #5=#:--cl-dolist-temp-- load-history] 6 (#$ . 4832) (list (read-feature "Unload feature: " t) current-prefix-arg)]) (provide 'loadhist)