[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/loadhist.el
From: |
Richard M . Stallman |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/loadhist.el |
Date: |
Sun, 02 Jan 2005 18:56:09 -0500 |
Index: emacs/lisp/loadhist.el
diff -c emacs/lisp/loadhist.el:1.29 emacs/lisp/loadhist.el:1.30
*** emacs/lisp/loadhist.el:1.29 Mon Feb 16 17:49:26 2004
--- emacs/lisp/loadhist.el Sun Jan 2 23:43:51 2005
***************
*** 51,59 ****
(error "%S is not a currently loaded feature" feature)
(car (feature-symbols feature))))
(defun file-provides (file)
"Return the list of features provided by FILE."
! (let ((symbols (cdr (assoc file load-history)))
provides)
(mapc (lambda (x)
(if (and (consp x) (eq (car x) 'provide))
--- 51,76 ----
(error "%S is not a currently loaded feature" feature)
(car (feature-symbols feature))))
+ (defun file-loadhist-lookup (file)
+ "Return the `load-history' element for FILE."
+ ;; First look for FILE as given.
+ (let ((symbols (assoc file load-history)))
+ ;; Try converting a library name to an absolute file name.
+ (and (null symbols)
+ (let ((absname (find-library-name file)))
+ (if (not (equal absname file))
+ (setq symbols (cdr (assoc absname load-history))))))
+ ;; Try converting an absolute file name to a library name.
+ (and (null symbols) (string-match "[.]el\\'" file)
+ (let ((libname (file-name-nondirectory file)))
+ (string-match "[.]el\\'" libname)
+ (setq libname (substring libname 0 (match-beginning 0)))
+ (setq symbols (cdr (assoc libname load-history)))))
+ symbols))
+
(defun file-provides (file)
"Return the list of features provided by FILE."
! (let ((symbols (file-loadhist-lookup file))
provides)
(mapc (lambda (x)
(if (and (consp x) (eq (car x) 'provide))
***************
*** 63,69 ****
(defun file-requires (file)
"Return the list of features required by FILE."
! (let ((symbols (cdr (assoc file load-history)))
requires)
(mapc (lambda (x)
(if (and (consp x) (eq (car x) 'require))
--- 80,86 ----
(defun file-requires (file)
"Return the list of features required by FILE."
! (let ((symbols (file-loadhist-lookup file))
requires)
(mapc (lambda (x)
(if (and (consp x) (eq (car x) 'require))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/lisp/loadhist.el,
Richard M . Stallman <=