Liking cljdoc? Tell your friends :D

donut.system


alias-componentclj/s

(alias-component component-id)

creates a component that just provides an instance defined elsewhere in the system

creates a component that just provides an instance defined elsewhere in the system
raw docstring

assoc-manyclj/s

(assoc-many m assocs)
(assoc-many m prefix assocs)

(assoc-many {} {[:foo :bar] :bux}) => {:foo {:bar :bux}

(assoc-many {} {[:foo :bar] :bux}) => {:foo {:bar :bux}
raw docstring

Componentclj/s


component-idclj/s

(component-id ref)

component?clj/s


ComponentGroupclj/s

Components are grouped. This theoretically helps if publishing a component library. It also helps when creating multiple instances of the same collection of components because components are allowed to have local refs. See TODO for more details.

Components are grouped. This theoretically helps if publishing a component
library. It also helps when creating multiple instances of the same collection
of components because components are allowed to have local refs. See TODO for
more details.
raw docstring

ComponentGroupNameclj/s


ComponentGroupsclj/s


ComponentIdclj/s


ComponentLikeclj/s

Component-like data shows up in ::defs, ::resolved-defs, and ::instances. None of these are the component per se, but they are the way the component manifests in that context.

Component-like data shows up in `::defs`, `::resolved-defs`, and `::instances`. None
of these are the component per se, but they are the way the component
manifests in that context.
raw docstring

ComponentNameclj/s


ComponentSelectionclj/s


config-collect-group-pathclj/s

specter path that retains a component's group name

specter path that retains a component's group name
raw docstring

default-signalsclj/s

which graph to follow to apply signal

which graph to follow to apply signal
raw docstring

DonutRefclj/s


DonutSystemclj/s


Graphclj/s

Graphs are used to specify component dependency order and signal application order.

Graphs are used to specify component dependency order and signal application
order.
raw docstring

group-ref-exceptionclj/s

(group-ref-exception _system
                     referencing-component-id
                     referenced-component-group-name)

group-ref?clj/s

(group-ref? ref)

init-systemclj/s

(init-system maybe-system signal-name component-keys)

local-refclj/s

(local-ref k)

LocalRefclj/s


named-systemclj/smultimethod

A way to name different system, e.g. :test, :dev, :prod, etc.

A way to name different system, e.g. :test, :dev, :prod, etc.
raw docstring

OrderGraphsclj/s

Topsorted and reverse-topsorted graphs are generated once when a system is initialized and assoc'c into the system. These graphs are used when applying signals.

Topsorted and reverse-topsorted graphs are generated once when a system is
initialized and assoc'c into the system. These graphs are used when applying
signals.
raw docstring

Refclj/s


refclj/s

(ref k)

ref-exceptionclj/s

(ref-exception _system referencing-component-id referenced-component-id)

ref-keyclj/s


ref-typeclj/s


ref?clj/s


RefKeyclj/s


required-componentclj/s

Communicates that a component needs to be provided.

Communicates that a component needs to be provided.
raw docstring

resolvedclj/s

(resolved {:keys [:donut.system/component-id :donut.system/resolved-defs]})

resumeclj/s

(resume system)

signalclj/s

(signal system signal-name & [component-keys])

SignalConfigclj/s

The set of signals your system can respond to is configurable. To apply a signal, the system needs to know in what order components should be traversed.

The set of signals your system can respond to is configurable. To apply a
signal, the system needs to know in what order components should be
traversed.
raw docstring

startclj/s

(start config-name)
(start config-name custom-config)
(start config-name custom-config component-ids)

stopclj/s

(stop system)

stop-failed-systemclj/s

(stop-failed-system)

Will attempt to stop a system that threw an exception when starting

Will attempt to stop a system that threw an exception when starting
raw docstring

strkclj/s

(strk & xs)

Like str but with keywords

Like `str` but with keywords
raw docstring

subsystem-componentclj/s

(subsystem-component subsystem & [imports])

Decorates a subsystem so that it can respond to signals when embedded in a parent component.

Decorates a subsystem so that it can respond to signals when embedded in a
parent component.
raw docstring

suspendclj/s

(suspend system)

systemclj/s

(system sconf)
(system sconf component-def-overrides)

specify a system or a system named registered with config, and optionally provide overrides

specify a system or a system named registered with `config`, and optionally
provide overrides
raw docstring

system?clj/s


validate-instance-with-malliclj/s

(validate-instance-with-malli {:keys [:donut.system/instance ->validation
                                      :donut.system/system]})

helper function for validating component instances with malli if a schema is present.

helper function for validating component instances with malli if a schema is
present.
raw docstring

cljdoc is a website building & hosting documentation for Clojure/Script libraries

× close