ClojureDocs

Nav

Namespaces

swap-vals!

clojure.core

Available since 1.9 (source)
  • (swap-vals! atom f)
  • (swap-vals! atom f x)
  • (swap-vals! atom f x y)
  • (swap-vals! atom f x y & args)
Atomically swaps the value of atom to be:
(apply f current-value-of-atom args). Note that f may be called
multiple times, and thus should be free of side effects.
Returns [old new], the value of the atom before and after the swap.