Documentation
Simple function which tells us what handler should deal
with FORM. Signals an error if we don't have a handler for
FORM.
Source
(defun find-walker-handler (form)
"Simple function which tells us what handler should deal
with FORM. Signals an error if we don't have a handler for
FORM."
(if (atom form)
(gethash '+atom-marker+ *walker-handlers*)
(aif (gethash (car form) *walker-handlers*)
it
(case (car form)
((block declare flet function go if labels let let*
macrolet progn quote return-from setq symbol-macrolet
tagbody unwind-protect catch multiple-value-call
multiple-value-prog1 throw load-time-value the
eval-when locally progv)
(error "Sorry, No walker for the special operater ~S defined." (car form)))
(t (gethash 'application *walker-handlers*))))))
Source Context