我有一个向量,其中包含Clojure中的哈希映射列表,我在这个向量上有一个add-watch来查看所做的任何更改。是否有一种简单的方法可以对哈希映射所做的更改进行差异处理,这样我可以获得哈希中已更改条目的列表?
注意:这是我之前的一些帖子,我曾尝试将更改保存到数据库中以存储在ref中的数据结构。我已经意识到保存状态的最简单方法是查看ref以进行更改然后存储这些更改。我理想的解决方案是,如果add-watch也通过了更改列表:)
答案 0 :(得分:1)
您可能需要更精确地定义“diff”。例如,向量中间的插入是作为单个更改计数还是作为该元素和所有后续元素的更改?您的矢量也保证长度相同吗?
话虽如此,简单的方法就是: