Liking cljdoc? Tell your friends :D

skeptic.schema.discovery

Plumatic source-form discovery, hermetic from the project JVM. Classifies each top-level form's head symbol by alias-resolving it against the namespace's (ns …) / top-level (require …) alias map, then tags matches with a producer role.

The forms arrive as inert :source-form data shipped by the worker (the project is never loaded on the host), so heads like s/defn / schema.core/defn / schemy/defn are resolved to the canonical schema.core/defn symbol via the alias map rather than by binding *ns* and consulting live project Vars.

Plumatic source-form discovery, hermetic from the project JVM. Classifies
each top-level form's head symbol by alias-resolving it against the
namespace's `(ns …)` / top-level `(require …)` alias map, then tags matches
with a producer role.

The forms arrive as inert `:source-form` data shipped by the worker (the
project is never loaded on the host), so heads like `s/defn` /
`schema.core/defn` / `schemy/defn` are resolved to the canonical
`schema.core/defn` symbol via the alias map rather than by binding `*ns*` and
consulting live project Vars.
raw docstring

discoverclj

(discover ns-sym forms)

Classify the namespace's top-level forms (shipped :source-form data) by Plumatic producer role. Returns {:declarations {qualified-sym {:role :form :declared-sym :ns}} :source-forms {qualified-sym <raw-form>} :errors [...]}.

forms is the seq of raw top-level source-forms for the namespace; the alias map for head resolution is derived from those same forms via source-form-aliases.

Classify the namespace's top-level `forms` (shipped `:source-form` data) by
Plumatic producer role. Returns
{:declarations {qualified-sym {:role :form :declared-sym :ns}}
 :source-forms {qualified-sym <raw-form>}
 :errors [...]}.

`forms` is the seq of raw top-level source-forms for the namespace; the alias
map for head resolution is derived from those same forms via `source-form-aliases`.
sourceraw docstring

source-form-aliasesclj

(source-form-aliases forms)

Build {alias-sym → target-ns-sym} for a namespace from its top-level source-forms (the (ns …) form's :require clauses plus any top-level (require …) forms). Hermetic: no live namespace is consulted.

Build `{alias-sym → target-ns-sym}` for a namespace from its top-level
source-forms (the `(ns …)` form's `:require` clauses plus any top-level
`(require …)` forms). Hermetic: no live namespace is consulted.
sourceraw docstring

cljdoc builds & hosts documentation for Clojure/Script libraries

Keyboard shortcuts
Ctrl+kJump to recent docs
Move to previous article
Move to next article
Ctrl+/Jump to the search field
× close