emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] trunk r113789: lisp/emacs-lisp/timer.el (timer--time): Def


From: Juanma Barranquero
Subject: [Emacs-diffs] trunk r113789: lisp/emacs-lisp/timer.el (timer--time): Define setter with gv-define-setter.
Date: Sat, 10 Aug 2013 12:31:19 +0000
User-agent: Bazaar (2.6b2)

------------------------------------------------------------
revno: 113789
revision-id: address@hidden
parent: address@hidden
committer: Juanma Barranquero <address@hidden>
branch nick: trunk
timestamp: Sat 2013-08-10 14:30:38 +0200
message:
  lisp/emacs-lisp/timer.el (timer--time): Define setter with gv-define-setter.
modified:
  lisp/ChangeLog                 changelog-20091113204419-o5vbwnq5f7feedwu-1432
  lisp/emacs-lisp/timer.el       timer.el-20091113204419-o5vbwnq5f7feedwu-2591
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog    2013-08-10 12:00:19 +0000
+++ b/lisp/ChangeLog    2013-08-10 12:30:38 +0000
@@ -1,7 +1,10 @@
 2013-08-10  Juanma Barranquero  <address@hidden>
 
+       * emacs-lisp/timer.el (timer--time): Define setter with
+       gv-define-setter to avoid deprecation warning.
+
        * completion.el: Remove stuff unused since revno:3176 (1993-05-27).
-       (*record-cmpl-statistics-p*): Remove (was commented out ).
+       (*record-cmpl-statistics-p*): Remove (was commented out).
        (cmpl-statistics-block): Remove (body was commented out).
        All callers changed.
        (add-completions-from-buffer, load-completions-from-file):

=== modified file 'lisp/emacs-lisp/timer.el'
--- a/lisp/emacs-lisp/timer.el  2013-05-17 04:09:16 +0000
+++ b/lisp/emacs-lisp/timer.el  2013-08-10 12:30:38 +0000
@@ -62,23 +62,22 @@
        (timer--usecs timer)
        (timer--psecs timer)))
 
-(gv-define-simple-setter timer--time
-  (lambda (timer time)
-    (timer--check timer)
-    (setf (timer--high-seconds timer) (pop time))
-    (let ((low time) (usecs 0) (psecs 0))
-      (if (consp time)
-          (progn
-            (setq low (pop time))
-            (if time
-                (progn
-                  (setq usecs (pop time))
-                  (if time
-                      (setq psecs (car time)))))))
-      (setf (timer--low-seconds timer) low)
-      (setf (timer--usecs timer) usecs)
-      (setf (timer--psecs timer) psecs))))
-
+(gv-define-setter timer--time (time timer)
+  (macroexp-let2 nil val time
+    `(progn
+       (timer--check ,timer)
+       (setf (timer--high-seconds ,timer) (pop ,val))
+       (let ((low ,val) (usecs 0) (psecs 0))
+        (when (consp ,val)
+          (setq low (pop ,val))
+          (when ,val
+            (setq usecs (pop ,val))
+            (when ,val
+              (setq psecs (car ,val)))))
+        (setf (timer--low-seconds ,timer) low)
+        (setf (timer--usecs ,timer) usecs)
+        (setf (timer--psecs ,timer) psecs))
+       ,val)))
 
 (defun timer-set-time (timer time &optional delta)
   "Set the trigger time of TIMER to TIME.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]