This commit is contained in:
Erick G. Islas-Osuna 2024-09-16 20:12:17 -06:00 committed by GitHub
commit b585792c29
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -18,17 +18,8 @@ Consider these examples:
:b [{:dd 4}]}) :b [{:dd 4}]})
;; Manual Clojure ;; Manual Clojure
(defn map-vals [m afn] (let [update-even #(update-vals % (fn [v] (cond-> v (even? v) inc)))]
(->> m (map (fn [[k v]] [k (afn v)])) (into (empty m)))) (update-vals data #(mapv update-even %)))
(map-vals data
(fn [v]
(mapv
(fn [m]
(map-vals
m
(fn [v] (if (even? v) (inc v) v))))
v)))
;; Specter ;; Specter
(transform [MAP-VALS ALL MAP-VALS even?] inc data) (transform [MAP-VALS ALL MAP-VALS even?] inc data)
@ -40,7 +31,7 @@ Consider these examples:
(def data {:a [1 2 3]}) (def data {:a [1 2 3]})
;; Manual Clojure ;; Manual Clojure
(update data :a (fn [v] (into (if v v []) [4 5]))) (update data :a concat [4 5])
;; Specter ;; Specter
(setval [:a END] [4 5] data) (setval [:a END] [4 5] data)