(defun match-url-handlers (request-url url-handlers) ;; if no match, returns nil, which is the same as (values nil nil), ;; so it works just fine for acond2 in `match-url-dispatch'. (loop for url-handler in url-handlers for (match args) = (multiple-value-list (scan-to-strings (url-regex url-handler) request-url)) when match do (return (values (apply-url-handler url-handler args) t))))Source Context