This commit is contained in:
Michiel Borkent 2022-10-02 18:06:31 +02:00
parent 0a88574d6f
commit a0ae7a94b7
2 changed files with 10 additions and 7 deletions

View file

@ -1,10 +1,12 @@
(ns babashka.impl.spec
{:no-doc true}
(:require [babashka.impl.clojure.spec.alpha :as s :refer [sns]]
[babashka.impl.clojure.spec.gen.alpha :as gen]
[babashka.impl.clojure.spec.test.alpha :as test :refer [tns]]
[clojure.core :as c]
[sci.core :as sci :refer [copy-var]]))
(:require
[babashka.impl.clojure.spec.alpha :as s :refer [sns]]
[babashka.impl.clojure.spec.gen.alpha :as gen]
[babashka.impl.clojure.spec.test.alpha :as test :refer [tns]]
[clojure.core :as c]
[clojure.spec.alpha :as csa]
[sci.core :as sci :refer [copy-var]]))
(def gns (sci/create-ns 'clojure.spec.gen.alpha nil))
@ -51,7 +53,7 @@
'fdef (copy-var s/fdef sns)
'fspec (copy-var s/fspec sns)
'fspec-impl (copy-var s/fspec-impl sns)
'every (copy-var s/every sns)
'every (copy-var csa/every sns)
'every-impl (copy-var s/every-impl sns)
'every-kv (copy-var s/every-kv sns)
'keys (copy-var s/keys sns)

View file

@ -535,7 +535,7 @@
mopts)
(mapcat identity))))
(defmacro every
#_(defmacro every
"takes a pred and validates collection elements against that pred.
Note that 'every' does not do exhaustive checking, rather it samples
@ -571,6 +571,7 @@
(assoc :clojure.spec.alpha/kind-form `'~(res (:kind opts))
:clojure.spec.alpha/describe (c/or desc `'(every ~(res pred) ~@(res-kind opts)))))
gx (gensym)
_ (prn nopts)
cpreds (cond-> [(list (c/or kind `coll?) gx)]
count (conj `(= ~count (bounded-count ~count ~gx)))