(gen spec)
(gen spec overrides)
Given a spec, returns the generator for it, or throws if none can
be constructed. Optionally an overrides map can be provided which
should map spec names or paths (vectors of keywords) to no-arg
generator-creating fns. These will be used instead of the generators at those
names/paths. Note that parent generator (in the spec or overrides
map) will supersede those of any subtrees. A generator for a regex
op must always return a sequential collection (i.e. a generator for
s/? should return either an empty sequence/vector or a
sequence/vector with one item in it)
Source
(defn
gen
"Given a spec, returns the generator for it, or throws if none can\n be constructed. Optionally an overrides map can be provided which\n should map spec names or paths (vectors of keywords) to no-arg\n generator-creating fns. These will be used instead of the generators at those\n names/paths. Note that parent generator (in the spec or overrides\n map) will supersede those of any subtrees. A generator for a regex\n op must always return a sequential collection (i.e. a generator for\n s/? should return either an empty sequence/vector or a\n sequence/vector with one item in it)"
([spec] (gen spec nil))
([spec overrides]
(gensub
spec
overrides
[]
{:clojure.core/recursion-limit *recursion-limit*}
spec)))