有没有一种简单的方式在Specter中收集满足谓词条件的所有结构?
我们如何获取所有的:name值,包括["Ballast" "Hull"]?
(./pull '[com.rpl/specter "1.0.0"])
(use 'com.rpl.specter)
(def data {:items [{:name "Washing machine"
:subparts [{:name "Ballast" :weight 1}
{:name "Hull" :weight 2}]}]})
(reduce + (select [(walker :weight) :weight] data))
;=> 3
(select [(walker :name) :name] data)
;=> ["Washing machine"]
我们如何获取所有的:name值,包括["Ballast" "Hull"]?