Core API for creating and managing first class state objects.
Core API for creating and managing first class state objects.
(defstate name doc-string? attr-map? body)
Create a State object, using the optional :start and :stop expressions, and bind it to a var with the given name in the current namespace. Supports metadata on the name, a docstring and an attribute map. Metadata is both set to the var as well as the State object.
Create a State object, using the optional :start and :stop expressions, and bind it to a var with the given name in the current namespace. Supports metadata on the name, a docstring and an attribute map. Metadata is both set to the var as well as the State object.
(state & exprs)
Create a state object, using the optional :start, :stop and :name expressions. The first forms are implicitly considered as the :start expression, if not qualified otherwise. Returned State object implements IDeref, IPending, Closeable, Named, IMeta and IObj.
Create a state object, using the optional :start, :stop and :name expressions. The first forms are implicitly considered as the :start expression, if not qualified otherwise. Returned State object implements IDeref, IPending, Closeable, Named, IMeta and IObj.
(state? obj)
Returns true if obj is a State object.
Returns true if obj is a State object.
(status)
Returns a list of active states, in realization order.
Returns a list of active states, in realization order.
(stop)
Stop the active states in the reverse order they were realized.
Stop the active states in the reverse order they were realized.
Add watches to this var to be notified of new (started) or old (closed) states.
Add watches to this var to be notified of new (started) or old (closed) states.
cljdoc is a website building & hosting documentation for Clojure/Script libraries
× close