cljs.spec.alpha/&

macropreviously cljs.spec/&Edit
(& re & preds)

Source docstring:
takes a regex op re, and predicates. Returns a regex-op that consumes
input as per re but subjects the resulting value to the
conjunction of the predicates, and any conforming they might perform.
Source code @ clojurescript:src/main/cljs/cljs/spec/alpha.cljc
(defmacro &
  [re & preds]
  (let [pv (vec preds)]
    `(amp-impl ~re ~pv '~(mapv #(res &env %) pv))))