[hunchentoot-devel] resurrect tbnl's debug-value macro?
Mac Chan
emailmac at gmail.com
Thu May 3 19:31:39 UTC 2007
On 5/3/07, Daniel Gackle <danielgackle at gmail.com> wrote:
> I'm curious: when you say "there are other ways to do it," what do you have in mind?
>
> Dan
With this ugly bit of code. The debug-value macro is still nicer though :-)
(let ((saved-process-request #'hunchentoot::process-request)
last-request last-session)
(defun request-sniffer (request)
(setf last-request request
last-session *session*)
(values))
(defun enable-debug-mode ()
(push #'request-sniffer *dispatch-table*)
(setf (fdefinition 'hunchentoot::process-request)
#'(lambda (&rest args)
(prog1 (apply saved-process-request args)
(setq *request* last-request
*session* last-session)))))
(defun disable-debug-mode ()
(makunbound '*request*)
(makunbound '*session*)
(setf last-request nil last-session nil
*dispatch-table* (delete #'request-sniffer *dispatch-table*)
(fdefinition 'hunchentoot::process-request) saved-process-request)))
More information about the Tbnl-devel
mailing list