orchard.spec

add-multi-specs

(add-multi-specs form)
Walk down a spec form and for every subform that is a multi-spec
add its sub specs.

describe

(describe s)

form

(form s)

generate

(generate s)

get-multi-spec-sub-specs

(get-multi-spec-sub-specs multi-spec-form)
Given a multi-spec form, call its multi method methods to retrieve
its subspecs.

get-spec

(get-spec v)

normalize-spec-fn-form

(normalize-spec-fn-form [_ [sym] & r])
Given a form like (fn* [any-symbol] ... any-symbol...) replace fn* with fn
and any occurrence of any-symbol with %.

normalize-spec-form

(normalize-spec-form sub-form)
Applys normalize-spec-fn-form to any fn* sub form.

registry

(registry)

spec

macro

(spec fname & args)

spec-example

(spec-example spec-name)
Given a spec symbol as a string, returns a string with a pretty printed
example generated by the spec.

spec-form

(spec-form spec-name)
Given a spec symbol as a string, get the spec form and prepare it for
a response.

spec-from-string

(spec-from-string s)
Given a string like "clojure.core/let" or ":user/email" returns
the associated spec in the registry, if there is one.

spec-gen

macro

(spec-gen fname & args)

spec-list

(spec-list filter-regex)
Retrieves a list of all specs in the registry, sorted by ns/name.
If filter-regex is not empty, keep only the specs with that prefix.

str-non-colls

(str-non-colls form)
Given a form, convert all non collection childs to str.