let with-elapsed-timer return last form

This commit is contained in:
Noam Postavsky 2013-10-12 13:58:37 -04:00
parent 3d871c7994
commit 026c46c057

View file

@ -321,17 +321,18 @@
:group 'use-package)
(defmacro with-elapsed-timer (text &rest forms)
(if use-package-verbose
(let ((nowvar (make-symbol "now")))
`(let ((,nowvar (current-time)))
(message "%s..." ,text)
(prog1 ,@forms
(let ((elapsed
(float-time (time-subtract (current-time) ,nowvar))))
(if (> elapsed ,use-package-minimum-reported-time)
(message "%s...done (%.3fs)" ,text elapsed)
(message "%s...done" ,text))))))
`(prog1 ,@forms)))
(let ((body `(progn ,@forms)))
(if use-package-verbose
(let ((nowvar (make-symbol "now")))
`(let ((,nowvar (current-time)))
(message "%s..." ,text)
(prog1 ,body
(let ((elapsed
(float-time (time-subtract (current-time) ,nowvar))))
(if (> elapsed ,use-package-minimum-reported-time)
(message "%s...done (%.3fs)" ,text elapsed)
(message "%s...done" ,text))))))
,body)))
(put 'with-elapsed-timer 'lisp-indent-function 1)