(defun match-url-packages (request-url url-packages)
;; to make my life easier, don't try to dynamically update a package map yet.
;; Though this would be nice to have.
(loop
for url-package in url-packages
for (val match?) =
(multiple-value-list
(with-slots (url-regex urlmap) url-package
(match-url-dispatch (=~ url-regex request-url $a) urlmap :nested? t)))
when match? do (return (values val t))))Source Context