[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
master b8b1d8d: Add fast-path to ert--explain-string-equal
From: |
Stefan Kangas |
Subject: |
master b8b1d8d: Add fast-path to ert--explain-string-equal |
Date: |
Sun, 26 Sep 2021 09:31:05 -0400 (EDT) |
branch: master
commit b8b1d8dee7e30415b057b7a45f288fda3601274f
Author: Stefan Kangas <stefan@marxist.se>
Commit: Stefan Kangas <stefan@marxist.se>
Add fast-path to ert--explain-string-equal
* lisp/emacs-lisp/ert.el (ert--explain-string-equal): Add fast-path to
avoid doing extra work.
Problem reported by Mattias EngdegÄrd <mattiase@acm.org>.
---
lisp/emacs-lisp/ert.el | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)
diff --git a/lisp/emacs-lisp/ert.el b/lisp/emacs-lisp/ert.el
index e72321f..72fe194 100644
--- a/lisp/emacs-lisp/ert.el
+++ b/lisp/emacs-lisp/ert.el
@@ -543,9 +543,11 @@ Returns nil if they are."
(defun ert--explain-string-equal (a b)
"Explainer function for `string-equal'."
;; Convert if they are symbols.
- (let ((as (if (symbolp a) (symbol-name a) a))
- (bs (if (symbolp b) (symbol-name b) b)))
- (ert--explain-equal-rec as bs)))
+ (if (string-equal a b)
+ nil
+ (let ((as (if (symbolp a) (symbol-name a) a))
+ (bs (if (symbolp b) (symbol-name b) b)))
+ (ert--explain-equal-rec as bs))))
(put 'string-equal 'ert-explainer 'ert--explain-string-equal)
(defun ert--significant-plist-keys (plist)
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- master b8b1d8d: Add fast-path to ert--explain-string-equal,
Stefan Kangas <=