Remove unnecessary save-excursion

This commit is contained in:
Ihor Radchenko 2021-04-06 22:51:54 +08:00
parent b4ff5cc423
commit 3c1550e5d1
No known key found for this signature in database
GPG key ID: 6470762A7DA11D8B

View file

@ -1289,7 +1289,7 @@ result form."
(and regexps (and regexps
(rx-to-string `(or ,@(mapcar (lambda (re) `(regex ,re)) regexps))))) (rx-to-string `(or ,@(mapcar (lambda (re) `(regex ,re)) regexps)))))
:case-fold t :case-fold t
:query `(or ,@(mapcar (lambda (clause) `(save-excursion ,clause)) queries))))))) :query `(or ,@queries))))))
(org-ql-defpred org-ql--when (_ &rest _) (org-ql-defpred org-ql--when (_ &rest _)
"Return values of CLAUSES when CONDITION is non-nil." "Return values of CLAUSES when CONDITION is non-nil."
@ -1302,7 +1302,7 @@ result form."
(-let* (((&plist :regexp :case-fold :query) (org-ql-query-preamble `(and ,condition ,(last clauses))))) (-let* (((&plist :regexp :case-fold :query) (org-ql-query-preamble `(and ,condition ,(last clauses)))))
(list :regexp regexp (list :regexp regexp
:case-fold case-fold :case-fold case-fold
:query `(when ,condition ,@(mapcar (lambda (clause) `(save-excursion ,clause)) (butlast clauses)) ,(last clauses))))))) :query `(when ,condition ,@clauses))))))
(org-ql-defpred org-ql--unless (_ &rest _) (org-ql-defpred org-ql--unless (_ &rest _)
"Return values of CLAUSES unless CONDITION is non-nil." "Return values of CLAUSES unless CONDITION is non-nil."
@ -1315,13 +1315,13 @@ result form."
(-let* (((&plist :regexp :case-fold :query) (org-ql-query-preamble ,(last clauses)))) (-let* (((&plist :regexp :case-fold :query) (org-ql-query-preamble ,(last clauses))))
(list :regexp regexp (list :regexp regexp
:case-fold case-fold :case-fold case-fold
:query `(unless (save-excursion ,condition) ,@(mapcar (lambda (clause) `(save-excursion ,clause)) (butlast clauses)) ,(last clauses))))))) :query `(unless ,condition ,@clauses))))))
(org-ql-defpred org-ql--not (_) (org-ql-defpred org-ql--not (_)
"Match when CLAUSES don't match." "Match when CLAUSES don't match."
:normalizers :normalizers
((`(not . ,clauses) ((`(not . ,clauses)
`(save-excursion (not ,@(mapcar #'org-ql-normalize-query clauses)))))) `(not ,@(mapcar #'org-ql-normalize-query clauses)))))
(org-ql-defpred category (&rest categories) (org-ql-defpred category (&rest categories)
"Return non-nil if current heading is in one or more of CATEGORIES (a list of strings)." "Return non-nil if current heading is in one or more of CATEGORIES (a list of strings)."