diff options
author | Lars Ingebrigtsen <larsi@gnus.org> | 2016-02-28 15:39:33 +1030 |
---|---|---|
committer | Lars Ingebrigtsen <larsi@gnus.org> | 2016-02-28 15:39:33 +1030 |
commit | 5cac11aa0676416432efca82e352938d4d4366f3 (patch) | |
tree | 90614c40526162a82c35859c7468e522693272c2 /lisp/calendar | |
parent | b13cab683c6060e002906fc944680aaa5f4ac123 (diff) | |
download | emacs-5cac11aa0676416432efca82e352938d4d4366f3.tar.gz |
Make parse-time-string-chars faster
* lisp/calendar/parse-time.el (parse-time-string-chars): Clean
up the code (backport:).
Diffstat (limited to 'lisp/calendar')
-rw-r--r-- | lisp/calendar/parse-time.el | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/lisp/calendar/parse-time.el b/lisp/calendar/parse-time.el index 4086d236557..6ba26a4a00d 100644 --- a/lisp/calendar/parse-time.el +++ b/lisp/calendar/parse-time.el @@ -41,14 +41,11 @@ (defvar parse-time-val) (defsubst parse-time-string-chars (char) - (save-match-data - (let (case-fold-search str) - (cond ((eq char ?+) 1) - ((eq char ?-) -1) - ((eq char ?:) ?d) - ((string-match "[[:upper:]]" (setq str (string char))) ?A) - ((string-match "[[:lower:]]" str) ?a) - ((string-match "[[:digit:]]" str) ?0))))) + (cond ((<= ?a char ?z) ?a) + ((<= ?0 char ?9) ?0) + ((eq char ?+) 1) + ((eq char ?-) -1) + ((eq char ?:) ?d))) (defun parse-time-tokenize (string) "Tokenize STRING into substrings." |