(let [data {:data {:a [1 2 3] :b [{:foo :bar}]}}]
(is (= (s/transform (s/walker (every-pred vector? (fn-> count (= 1)) )) first data)
{:data {:a [1 2 3] :b {:foo :bar}}})))
thanks a lot for answering!
@akond thanks, I learned from that example too. a couple of questions: 1/ which lib does fn-> come from? 2/ the docs for walker imply it stops navigation when the predicate is satisfied once but, when I add another match, it transforms that too. this is what I want but it seems to contradict the docstring. what am I missing?