(add-desc-and-meta [fname & rest] desc meta)
(as-step-fn flow)
Transform a flow step into a state transition function
Transform a flow step into a state transition function
(description->string description)
(get-description)
(probe-state desc state right-value metadata)
Given a fact description, a state and a right-value, returns a State that runs left up to times-to-retry times every sleep-time ms until left-value equals right value.
Given a fact description, a state and a right-value, returns a State that runs left up to times-to-retry times every sleep-time ms until left-value equals right value.
(push-meta description)
(retry times pred? lazy-seq)
Tries at most n times, returns a vector with true and first element that succeeded or false and result of the first try
Tries at most n times, returns a vector with true and first element that succeeded or false and result of the first try
(run flow initial-state)
(run! flow initial-state)
Like run, but prints a log and throws error when flow fails with an exception
Like run, but prints a log and throws error when flow fails with an exception
(run* {:keys [init cleanup runner]
:or {init (constantly {}) cleanup identity runner run!}}
flow)
Run a flow with specified parameters
Receives optional parameter maps
init
, a function with no arguments that returns the initial state.
cleanup
, function receiving the final state to perform cleanup if necessary
runner
, function that will receive a flow and an initial state and execute the flow
Run a flow with specified parameters Receives optional parameter maps `init`, a function with no arguments that returns the initial state. `cleanup`, function receiving the final state to perform cleanup if necessary `runner`, function that will receive a flow and an initial state and execute the flow
(update-description old new)
(verify desc left-value right-value)
If left-value is a state, do fact probing. Otherwise, regular fact checking. Push and pop descriptions (same behaviour of flow)
If left-value is a state, do fact probing. Otherwise, regular fact checking. Push and pop descriptions (same behaviour of flow)
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close