Commit 6f0d4bb6 authored by Glenn Morris's avatar Glenn Morris
Browse files

time-to-seconds related simplifications.

* lisp/gnus/gnus-util.el (with-no-warnings): Remove compat stub, now unused.
(gnus-float-time): On Emacs, always an alias.

* lisp/gnus/ecomplete.el (with-no-warnings): Remove compat stub, now unused.
(ecomplete-add-item): Use float-time on Emacs, else gnus-float-time.

* lisp/textmodes/remember.el (remember-time-to-seconds): Remove.
(remember-store-in-mailbox): Use float-time.

* lisp/calendar/timeclock.el (timeclock-time-to-seconds): Make it an alias.

* lisp/calendar/time-date.el (time-to-seconds): Always an alias on Emacs,
never a real function.
(with-no-warnings): Remove compat stub, now unused.
(time-less-p): Doc fix.
(time-to-number-of-days): Simplify.
parent 73171bd4
2010-11-10 Glenn Morris <rgm@gnu.org>
 
* textmodes/remember.el (remember-time-to-seconds): Remove.
(remember-store-in-mailbox): Use float-time.
* calendar/timeclock.el (timeclock-time-to-seconds): Make it an alias.
* calendar/time-date.el (time-to-seconds): Always an alias on Emacs,
never a real function.
(with-no-warnings): Remove compat stub, now unused.
(time-less-p): Doc fix.
(time-to-number-of-days): Simplify.
* eshell/esh-util.el (eshell-time-less-p, eshell-time-to-seconds):
Remove.
(eshell-read-passwd, eshell-read-hosts): Use time-less-p.
......
......@@ -112,15 +112,17 @@ If DATE lacks timezone information, GMT is assumed."
;; Bit of a mess. Emacs has float-time since at least 21.1.
;; This file is synced to Gnus, and XEmacs packages may have been written
;; using time-to-seconds from the Gnus library.
;;;###autoload(if (and (fboundp 'float-time)
;;;###autoload (subrp (symbol-function 'float-time)))
;;;###autoload(if (or (featurep 'emacs)
;;;###autoload (and (fboundp 'float-time)
;;;###autoload (subrp (symbol-function 'float-time))))
;;;###autoload (progn
;;;###autoload (defalias 'time-to-seconds 'float-time)
;;;###autoload (make-obsolete 'time-to-seconds 'float-time "21.1"))
;;;###autoload (autoload 'time-to-seconds "time-date"))
(eval-and-compile
(unless (and (fboundp 'float-time)
(eval-when-compile
(or (featurep 'emacs)
(and (fboundp 'float-time)
(subrp (symbol-function 'float-time)))
(defun time-to-seconds (time)
"Convert time value TIME to a floating point number."
......@@ -129,11 +131,6 @@ If DATE lacks timezone information, GMT is assumed."
low
(/ micro 1000000.0))))))
(eval-when-compile
(unless (fboundp 'with-no-warnings)
(defmacro with-no-warnings (&rest body)
`(progn ,@body))))
;;;###autoload
(defun seconds-to-time (seconds)
"Convert SECONDS (a floating point number) to a time value."
......@@ -143,7 +140,7 @@ If DATE lacks timezone information, GMT is assumed."
;;;###autoload
(defun time-less-p (t1 t2)
"Say whether time value T1 is less than time value T2."
"Return non-nil if time value T1 is earlier than time value T2."
(with-decoded-time-value ((high1 low1 micro1 t1)
(high2 low2 micro2 t2))
(or (< high1 high2)
......@@ -256,17 +253,15 @@ The Gregorian date Sunday, December 31, 1bce is imaginary."
(- (/ (1- year) 100)) ; - century years
(/ (1- year) 400)))) ; + Gregorian leap years
(eval-and-compile
(if (and (fboundp 'float-time)
(subrp (symbol-function 'float-time)))
(defun time-to-number-of-days (time)
"Return the number of days represented by TIME.
The number of days will be returned as a floating point number."
(/ (float-time time) (* 60 60 24)))
(defun time-to-number-of-days (time)
(defun time-to-number-of-days (time)
"Return the number of days represented by TIME.
The number of days will be returned as a floating point number."
(/ (with-no-warnings (time-to-seconds time)) (* 60 60 24)))))
Returns a floating point number."
(/ (funcall (eval-when-compile
(if (or (featurep 'emacs)
(and (fboundp 'float-time)
(subrp (symbol-function 'float-time))))
'float-time
'time-to-seconds)) time) (* 60 60 24)))
;;;###autoload
(defun safe-date-to-time (date)
......
......@@ -543,11 +543,8 @@ non-nil, the amount returned will be relative to past time worked."
(message "%s" string)
string)))
(defsubst timeclock-time-to-seconds (time)
"Convert TIME to a floating point number."
(+ (* (car time) 65536.0)
(cadr time)
(/ (or (nth 2 time) 0) 1000000.0)))
(defalias 'timeclock-time-to-seconds (if (fboundp 'float-time) 'float-time
'time-to-seconds))
(defsubst timeclock-seconds-to-time (seconds)
"Convert SECONDS (a floating point number) to an Emacs time structure."
......@@ -1419,5 +1416,4 @@ HTML-P is non-nil, HTML markup is added."
(if (file-readable-p timeclock-file)
(timeclock-reread-log))
;; arch-tag: a0be3377-deb6-44ec-b9a2-a7be28436a40
;;; timeclock.el ends here
2010-11-10 Glenn Morris <rgm@gnu.org>
* gnus-util.el (with-no-warnings): Remove compat stub, now unused.
(gnus-float-time): On Emacs, always an alias.
* ecomplete.el (with-no-warnings): Remove compat stub, now unused.
(ecomplete-add-item): Use float-time on Emacs, else gnus-float-time.
2010-11-10 Katsumi Yamaoka <yamaoka@jpl.org>
 
* gnus-art.el (org-entities): Bind it.
......
;;; ecomplete.el --- electric completion of addresses and the like
;; Copyright (C) 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
;; Copyright (C) 2006, 2007, 2008, 2009, 2010
;; Free Software Foundation, Inc.
;; Author: Lars Magne Ingebrigtsen <larsi@gnus.org>
;; Keywords: mail
......@@ -27,11 +28,6 @@
(eval-when-compile
(require 'cl))
(eval-when-compile
(unless (fboundp 'with-no-warnings)
(defmacro with-no-warnings (&rest body)
`(progn ,@body))))
(defgroup ecomplete nil
"Electric completion of email addresses and the like."
:group 'mail)
......@@ -61,11 +57,10 @@
(defun ecomplete-add-item (type key text)
(let ((elems (assq type ecomplete-database))
(now (string-to-number
(format "%.0f" (if (and (fboundp 'float-time)
(subrp (symbol-function 'float-time)))
(format "%.0f" (if (featurep 'emacs)
(float-time)
(with-no-warnings
(time-to-seconds (current-time)))))))
(require 'gnus-util)
(gnus-float-time)))))
entry)
(unless elems
(push (setq elems (list type)) ecomplete-database))
......
......@@ -39,11 +39,6 @@
(eval-when-compile
(require 'cl))
(eval-when-compile
(unless (fboundp 'with-no-warnings)
(defmacro with-no-warnings (&rest body)
`(progn ,@body))))
(defcustom gnus-completing-read-function 'gnus-emacs-completing-read
"Function use to do completing read."
:version "24.1"
......@@ -320,13 +315,14 @@ Symbols are also allowed; their print names are used instead."
(> (nth 1 fdate) (nth 1 date))))))
(eval-and-compile
(if (and (fboundp 'float-time)
(subrp (symbol-function 'float-time)))
(if (or (featurep 'emacs)
(and (fboundp 'float-time)
(subrp (symbol-function 'float-time))))
(defalias 'gnus-float-time 'float-time)
(defun gnus-float-time (&optional time)
"Convert time value TIME to a floating point number.
TIME defaults to the current time."
(with-no-warnings (time-to-seconds (or time (current-time)))))))
(time-to-seconds (or time (current-time))))))
;;; Keymap macros.
......
;;; remember --- a mode for quickly jotting down things to remember
;; Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007,
;; 2008, 2009, 2010 Free Software Foundation, Inc.
;; Copyright (C) 1999, 2000, 2001, 2003, 2004, 2005, 2006, 2007, 2008,
;; 2009, 2010 Free Software Foundation, Inc.
;; Author: John Wiegley <johnw@gnu.org>
;; Created: 29 Mar 1999
......@@ -315,12 +315,6 @@ With a prefix or a visible region, use the region as INITIAL."
(let ((remember-in-new-frame t))
(remember initial)))
(defsubst remember-time-to-seconds (time)
"Convert TIME to a floating point number."
(+ (* (car time) 65536.0)
(cadr time)
(/ (or (car (cdr (cdr time))) 0) 1000000.0)))
(defsubst remember-mail-date (&optional rfc822-p)
"Return a simple date. Nothing fancy."
(if rfc822-p
......@@ -355,8 +349,7 @@ In which case `remember-mailbox' should be the name of the mailbox.
Each piece of pseudo-mail created will have an `X-Todo-Priority'
field, for the purpose of appropriate splitting."
(let ((who (read-string "Who is this item related to? "))
(moment
(format "%.0f" (remember-time-to-seconds (current-time))))
(moment (format "%.0f" (float-time)))
(desc (remember-buffer-desc))
(text (buffer-string)))
(with-temp-buffer
......@@ -535,5 +528,4 @@ the data away for latter retrieval, and possible indexing.
\\{remember-mode-map}"
(set-keymap-parent remember-mode-map nil))
;; arch-tag: 59312a05-06c7-4da1-b6f7-5ea41c9d5577
;;; remember.el ends here
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment