Changes committed gnus/lisp (ChangeLog parse-time.el)
"Katsumi Yamaoka" <[email protected]> Tue, 19 Jan 2010 05:05:20 +0100
| Newsgroups | gmane.emacs.gnus.commits |
|---|---|
| Message-ID | <[email protected]> |
Modified: ChangeLog parse-time.el (parse-time-syntax): Define it for only XEmacs. (parse-time-string-chars): Implement 2009-08-16 change for Emacs. Index: ChangeLog diff -u gnus/lisp/ChangeLog:7.2055 gnus/lisp/ChangeLog:7.2056 --- ChangeLog:7.2055 Mon Jan 18 23:10:52 2010 +++ ChangeLog Tue Jan 19 05:05:20 2010 @@ -1,3 +1,8 @@ +2010-01-19 Katsumi Yamaoka <[email protected]> + + * parse-time.el (parse-time-syntax): Define it for only XEmacs. + (parse-time-string-chars): Implement 2009-08-16 change for Emacs. + 2010-01-18 Chong Yidong <[email protected]> * time-date.el (date-to-time): Doc fix (Bug#5408). Index: parse-time.el diff -u gnus/lisp/parse-time.el:7.17 gnus/lisp/parse-time.el:7.18 --- parse-time.el:7.17 Wed Jan 13 11:59:44 2010 +++ parse-time.el Tue Jan 19 05:05:20 2010 @@ -37,7 +37,9 @@ (eval-when-compile (require 'cl)) ;and ah ain't kiddin' 'bout it -(defvar parse-time-syntax (make-vector 256 nil)) +(eval-and-compile + (when (featurep 'xemacs) + (defvar parse-time-syntax (make-vector 256 nil)))) (defvar parse-time-digits (make-vector 256 nil)) ;; Byte-compiler warnings @@ -48,25 +50,35 @@ (loop for i from ?0 to ?9 do (aset parse-time-digits i (- i ?0)))) -(unless (aref parse-time-syntax ?0) - (loop for i from ?0 to ?9 - do (aset parse-time-syntax i ?0)) - (loop for i from ?A to ?Z - do (aset parse-time-syntax i ?A)) - (loop for i from ?a to ?z - do (aset parse-time-syntax i ?a)) - (aset parse-time-syntax ?+ 1) - (aset parse-time-syntax ?- -1) - (aset parse-time-syntax ?: ?d)) +(when (featurep 'xemacs) + (unless (aref parse-time-syntax ?0) + (loop for i from ?0 to ?9 + do (aset parse-time-syntax i ?0)) + (loop for i from ?A to ?Z + do (aset parse-time-syntax i ?A)) + (loop for i from ?a to ?z + do (aset parse-time-syntax i ?a)) + (aset parse-time-syntax ?+ 1) + (aset parse-time-syntax ?- -1) + (aset parse-time-syntax ?: ?d))) (defsubst digit-char-p (char) (aref parse-time-digits char)) -;; Note: the function definition differs from the one in Emacs -;; in order to keep the compatibility with XEmacs. -(defsubst parse-time-string-chars (char) - (and (< char (length parse-time-syntax)) - (aref parse-time-syntax char))) +(eval-and-compile + (if (featurep 'xemacs) + (defsubst parse-time-string-chars (char) + (and (< char (length parse-time-syntax)) + (aref parse-time-syntax char))) + (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))))))) (put 'parse-error 'error-conditions '(parse-error error)) (put 'parse-error 'error-message "Parsing error")