emacs-elpa-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[elpa] externals/path-iterator 92c5173 08/10: In ada-mode, wisi; release


From: Stefan Monnier
Subject: [elpa] externals/path-iterator 92c5173 08/10: In ada-mode, wisi; release ada-mode 6.1.1, wisi 2.1.1
Date: Tue, 1 Dec 2020 16:43:57 -0500 (EST)

branch: externals/path-iterator
commit 92c5173c178660d8d5e44a41729547757e16ea2d
Author: Stephen Leake <stephen_leake@stephe-leake.org>
Commit: Stephen Leake <stephen_leake@stephe-leake.org>

    In ada-mode, wisi; release ada-mode 6.1.1, wisi 2.1.1
---
 path-iterator.el | 16 +++++++---------
 1 file changed, 7 insertions(+), 9 deletions(-)

diff --git a/path-iterator.el b/path-iterator.el
index c4b550a..e99cfcc 100644
--- a/path-iterator.el
+++ b/path-iterator.el
@@ -108,12 +108,6 @@
   state ;; one of nil, 'started, 'complete. Allows detecting interrupted 
computation.
   )
 
-(cl-defmethod path-iter-contains-root ((iter path-iterator) root)
-  "Return non-nil if ITER roots contain ROOT."
-  (or (member root (path-iter-path-recursive-init iter))
-      (member root (path-iter-path-non-recursive-init iter))
-      ))
-
 (defun path-iter--to-truename (path)
   "Convert each existing element of PATH to an absolute directory file 
truename,
 return the resulting list.  Elements of PATH are either absolute or
@@ -275,8 +269,10 @@ Return a list of absolute filenames or nil if none found."
        (file-name-all-completions filename dir)))
     result))
 
-(defun path-iter-all-files (iter)
-  "Return all filenames in ITER (a `path-iterator' object."
+(cl-defmethod path-iter-files ((iter path-iterator) pred)
+  "Return all filenames in ITER satisfying predicate PRED.
+If non-nil, PRED is a function taking a single absolute file
+name; the file is included if PRED returns non-nil"
   (let (dir result)
     (path-iter-restart iter)
 
@@ -285,7 +281,9 @@ Return a list of absolute filenames or nil if none found."
        (lambda (absfile)
         (when (and (not (string-equal "." (substring absfile -1)))
                    (not (string-equal ".." (substring absfile -2)))
-                   (not (file-directory-p absfile)))
+                   (not (file-directory-p absfile))
+                    (or (null pred)
+                        (funcall pred absfile)))
           (push absfile result)))
        (directory-files dir t))
       )



reply via email to

[Prev in Thread] Current Thread [Next in Thread]