2015-03-13 52 views
4

從我所知道的Clojure docs page for transient中,在數據結構上調用transientpersistent!僅對該集合對象(矢量,散列映射或散列集)起作用。我可以使瞬態/堅持一個完整的數據結構嗎?

如果我有一個對象樹,有沒有辦法遞歸地採取整個結構的臨時副本?然後把整個結構變回來?

+1

你可能不得不用clojure.walk/postwalk來推出自己的產品。 – Alex 2015-03-13 21:22:33

+0

@Alex如果您發佈這個答案,我將完全投票 – 2015-03-13 23:13:47

+0

@AururUlfeldt原來clojure.walk不適用於瞬變。所以你真的*必須要推出自己的產品。 – Alex 2015-03-16 13:37:02

回答

0

看起來可能是因爲@Alex曾經說過,你需要推出自己的函數來遍歷數據結構。還請注意,沒有assoc-in!assoc-in平行,這表明如果您想將assoc-in嵌套到數據結構中,您最終可能會滾動您自己的版本。

相關問題