Cambia atómicamente el valor del átomo por uno nuevo basado en una función particular.
Sintaxis
A continuación se muestra la sintaxis.
(swap! atom-name function)
Parameters- 'atom-name' es el nombre del átomo cuyo valor debe restablecerse. 'función' es la función que se utiliza para generar el nuevo valor del átomo.
Return Value - El átomo con el nuevo valor se establecerá en función de la función proporcionada.
Ejemplo
En el siguiente programa se muestra un ejemplo de cómo se usa.
(ns clojure.examples.example
(:gen-class))
(defn example []
(def myatom (atom 1))
(println @myatom)
(swap! myatom inc)
(println @myatom))
(example)
Salida
El programa anterior produce la siguiente salida.
1
2
En el programa anterior puede ver que el ‘inc’(Función de incremento) se utiliza para incrementar el valor del átomo y con la ayuda del intercambio. función, el nuevo valor se asocia automáticamente con el átomo.