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

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

[elpa] externals/ebdb a40874b 3/7: Use ebdb-foo-in-list for the fast loo


From: Eric Abrahamsen
Subject: [elpa] externals/ebdb a40874b 3/7: Use ebdb-foo-in-list for the fast lookups check
Date: Fri, 14 Dec 2018 15:44:20 -0500 (EST)

branch: externals/ebdb
commit a40874ba6ca8194bbe67c408d98ba37cab9bccd3
Author: Eric Abrahamsen <address@hidden>
Commit: Eric Abrahamsen <address@hidden>

    Use ebdb-foo-in-list for the fast lookups check
    
    * ebdb.el (ebdb-search): We want to be able to handle subclasses and
      all that, as per usual.
    * ebdb-org.el: This chunk is no longer necessary, as
      `ebdb-org-field-tags' subclasses `ebdb-field-tags'.
---
 ebdb-org.el |  6 ------
 ebdb.el     | 11 ++++++-----
 2 files changed, 6 insertions(+), 11 deletions(-)

diff --git a/ebdb-org.el b/ebdb-org.el
index 162525f..5f6c3f6 100644
--- a/ebdb-org.el
+++ b/ebdb-org.el
@@ -122,12 +122,6 @@ italicized, in all other cases it is left unchanged."
   nil
   :human-readable "org tags")
 
-;; Use fast lookups on org-tags, too.
-(cl-pushnew (cons 'ebdb-org-field-tags
-                 (lambda (str rec)
-                   (ebdb-record-search rec 'ebdb-org-field-tags str)))
-           ebdb-hash-extra-predicates)
-
 (cl-defmethod ebdb-read ((field (subclass ebdb-org-field-tags)) &optional 
slots obj)
   (let* ((crm-separator (cadr (assq 'ebdb-field-tags ebdb-separator-alist)))
         (val (completing-read-multiple
diff --git a/ebdb.el b/ebdb.el
index a46061c..ca440ad 100644
--- a/ebdb.el
+++ b/ebdb.el
@@ -5260,12 +5260,13 @@ With optional argument INVERT, invert the search 
results."
       (pcase-dolist (`(,key ,crit) clauses)
        (or
         ;; Either we get some records out the fast lookup...
-        (and (or (memq key (list 'ebdb-field-name
-                                 'ebdb-field-mail
-                                 'ebdb-field-tags))
-                 (assoc key ebdb-hash-extra-predicates))
-             (stringp crit)
+        (and (stringp crit)
              (string-prefix-p "^" crit)
+             (or (ebdb-foo-in-list-p
+                  key (list 'ebdb-field-name
+                            'ebdb-field-mail
+                            'ebdb-field-tags))
+                 (assoc key ebdb-hash-extra-predicates))
              (setq completed-strings
                    (all-completions (downcase (substring crit 1))
                                     ebdb-hashtable)



reply via email to

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