1
我需要实现自定义assoc,但它不适用于多个参数。它只处理第一对。它似乎直接调用assoc,而不是通过core assoc,然后是RT/assoc。Clojure extend Assotiative arity
(def my-assoc (reify
clojure.lang.Associative
(assoc [_ k v]
(println "assoc!!" k v))))
(assoc my-assoc :a 2 :b 3) ;; prints only :a 2
应该怎么做才能支持多元化?
谢谢!完善! – uNmAnNeR
如果你看[clojure.core/assoc'的源代码](https://github.com/clojure/clojure/blob/clojure-1.9.0-alpha14/src/clj/clojure/core.clj# L181),你会发现它为每个'kv'对级联调用'RT/assoc'。 – Thumbnail