aboutsummaryrefslogtreecommitdiffstats
path: root/src/chameleon/core.clj
diff options
context:
space:
mode:
Diffstat (limited to 'src/chameleon/core.clj')
-rw-r--r--src/chameleon/core.clj13
1 files changed, 13 insertions, 0 deletions
diff --git a/src/chameleon/core.clj b/src/chameleon/core.clj
new file mode 100644
index 0000000..adcb223
--- /dev/null
+++ b/src/chameleon/core.clj
@@ -0,0 +1,13 @@
+(ns chameleon.core
+ (:require [clojure.spec.alpha :as s]))
+
+(defn conform-multiple
+ [& spec-form-pair]
+ (if (s/valid? :chameleon.specs/spec-form-pair spec-form-pair)
+ (->> spec-form-pair
+ (partition 2)
+ (map (fn [[sp form]]
+ (when (s/invalid? (s/conform sp form))
+ (s/explain-data sp form))))
+ (remove nil?))
+ (s/explain-data ::spec-form-pair spec-form-pair)))