Buscar..


Introducción

También conocidas como macros de flecha, las macros de subprocesamiento convierten llamadas de función anidadas en un flujo lineal de llamadas de función.

Último hilo (- >>)

Esta macro da la salida de una línea dada como el último argumento de la siguiente llamada de función de línea. Por ejemplo

(prn (str (+ 2 3)))

es igual que

(->> 2
    (+ 3)
    (str)
    (prn))

Primero el hilo (->)

Esta macro da la salida de una línea dada como el primer argumento de la siguiente llamada de función de línea. Por ejemplo

 (rename-keys (assoc {:a 1} :b 1) {:b :new-b}))

No puedo entender nada, ¿verdad? Vamos a intentarlo de nuevo, con ->

(-> {:a 1}
    (assoc :b 1)                ;;(assoc map key val)
    (rename-keys {:b :new-b}))  ;;(rename-keys map key-newkey-map)

Hilo como (como->)

Esta es una alternativa más flexible para subprocesar primero o subproceso último. Se puede insertar en cualquier parte de la lista de parámetros de la función.

(as-> [1 2] x
      (map #(+ 1 %) x)
      (if (> (count x) 2) "Large" "Small"))


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow