cljs.spec/merge

MOVED, please see cljs.spec.alpha/merge
macroremoved v1.9.542added v1.9.183Edit
(merge & pred-forms)

Source docstring:
Takes map-validating specs (e.g. 'keys' specs) and
returns a spec that returns a conformed map satisfying all of the
specs.  Successive conformed values propagate through rest of
predicates. Unlike 'and', merge can generate maps satisfying the
union of the predicates.
Source code @ clojurescript:src/main/cljs/cljs/spec.cljc
(defmacro merge
  [& pred-forms]
  `(merge-spec-impl '~(mapv #(res &env %) pred-forms) ~(vec pred-forms) nil))