[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] trunk r113826: * lisp/emacs-lisp/timer.el (timer--time-set
From: |
Stefan Monnier |
Subject: |
[Emacs-diffs] trunk r113826: * lisp/emacs-lisp/timer.el (timer--time-setter): New function. |
Date: |
Tue, 13 Aug 2013 02:30:57 +0000 |
User-agent: |
Bazaar (2.6b2) |
------------------------------------------------------------
revno: 113826
revision-id: address@hidden
parent: address@hidden
committer: Stefan Monnier <address@hidden>
branch nick: trunk
timestamp: Mon 2013-08-12 22:30:52 -0400
message:
* lisp/emacs-lisp/timer.el (timer--time-setter): New function.
(timer--time): Use it as gv-setter.
* lisp/emacs-lisp/gv.el (gv-define-simple-setter): Output warning when
setter is not a symbol.
modified:
lisp/ChangeLog changelog-20091113204419-o5vbwnq5f7feedwu-1432
lisp/emacs-lisp/cl-macs.el clmacs.el-20091113204419-o5vbwnq5f7feedwu-612
lisp/emacs-lisp/gv.el setf.el-20120531120738-6w8114hk2anryyud-1
lisp/emacs-lisp/timer.el timer.el-20091113204419-o5vbwnq5f7feedwu-2591
=== modified file 'lisp/ChangeLog'
--- a/lisp/ChangeLog 2013-08-12 17:25:22 +0000
+++ b/lisp/ChangeLog 2013-08-13 02:30:52 +0000
@@ -1,3 +1,11 @@
+2013-08-13 Stefan Monnier <address@hidden>
+
+ * emacs-lisp/timer.el (timer--time-setter): New function.
+ (timer--time): Use it as gv-setter.
+
+ * emacs-lisp/gv.el (gv-define-simple-setter): Output warning when
+ setter is not a symbol.
+
2013-08-12 Grégoire Jadi <address@hidden>
* mail/sendmail.el (sendmail-send-it): Don't kill the error buffer
@@ -20,8 +28,8 @@
2013-08-11 Lars Magne Ingebrigtsen <address@hidden>
- * net/eww.el (eww-display-html): Ignore coding system errors. One
- web site uses "utf-8lias" as the coding system.
+ * net/eww.el (eww-display-html): Ignore coding system errors.
+ One web site uses "utf-8lias" as the coding system.
2013-08-11 Juanma Barranquero <address@hidden>
@@ -222,7 +230,7 @@
(allout-up-current-level, allout-end-of-level, allout-reindent-body)
(allout-yank-processing, allout-process-exposed)
(allout-latex-verb-quote, allout-latexify-one-item, outlineify-sticky)
- (allout-latex-verbatim-quote-curr-line): Removed unused variables.
+ (allout-latex-verbatim-quote-curr-line): Remove unused variables.
* emacs-lisp/lisp-mode.el (lisp-eval-defun, last-sexp-toggle-display)
(lisp-indent-defform): Mark ignored arguments.
(lisp-indent-line): Mark ignored arguments. Remove unused variables.
=== modified file 'lisp/emacs-lisp/cl-macs.el'
--- a/lisp/emacs-lisp/cl-macs.el 2013-07-12 01:11:22 +0000
+++ b/lisp/emacs-lisp/cl-macs.el 2013-08-13 02:30:52 +0000
@@ -616,7 +616,7 @@
(declare (debug (form &optional sexp)))
(if (cl--compiling-file)
(let* ((temp (cl-gentemp "--cl-load-time--"))
- (set `(set ',temp ,form)))
+ (set `(setq ,temp ,form)))
(if (and (fboundp 'byte-compile-file-form-defmumble)
(boundp 'this-kind) (boundp 'that-one))
(fset 'byte-compile-file-form
=== modified file 'lisp/emacs-lisp/gv.el'
--- a/lisp/emacs-lisp/gv.el 2013-01-02 16:13:04 +0000
+++ b/lisp/emacs-lisp/gv.el 2013-08-13 02:30:52 +0000
@@ -217,13 +217,15 @@
temp)
so as to preserve the semantics of `setf'."
(declare (debug (sexp (&or symbolp lambda-expr) &optional sexp)))
+ (when (eq 'lambda (car-safe setter))
+ (message "Use `gv-define-setter' or name %s's setter function" name))
`(gv-define-setter ,name (val &rest args)
,(if fix-return
`(macroexp-let2 nil v val
`(progn
- (,',setter ,@(append args (list v)))
+ (,',setter ,@args ,v)
,v))
- `(cons ',setter (append args (list val))))))
+ ``(,',setter ,@args ,val))))
;;; Typical operations on generalized variables.
=== modified file 'lisp/emacs-lisp/timer.el'
--- a/lisp/emacs-lisp/timer.el 2013-08-10 12:30:38 +0000
+++ b/lisp/emacs-lisp/timer.el 2013-08-13 02:30:52 +0000
@@ -55,30 +55,29 @@
(defsubst timer--check (timer)
(or (timerp timer) (signal 'wrong-type-argument (list #'timerp timer))))
+(defun timer--time-setter (timer time)
+ (timer--check timer)
+ (setf (timer--high-seconds timer) (pop time))
+ (let ((low time) (usecs 0) (psecs 0))
+ (when (consp time)
+ (setq low (pop time))
+ (when time
+ (setq usecs (pop time))
+ (when time
+ (setq psecs (car time)))))
+ (setf (timer--low-seconds timer) low)
+ (setf (timer--usecs timer) usecs)
+ (setf (timer--psecs timer) psecs)
+ time))
+
;; Pseudo field `time'.
(defun timer--time (timer)
+ (declare (gv-setter timer--time-setter))
(list (timer--high-seconds timer)
(timer--low-seconds timer)
(timer--usecs timer)
(timer--psecs timer)))
-(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.
TIME must be in the internal format returned by, e.g., `current-time'.
- [Emacs-diffs] trunk r113826: * lisp/emacs-lisp/timer.el (timer--time-setter): New function.,
Stefan Monnier <=