如果merge使用临时映射会更好。
补丁
- clj-1458-7.patch
方法
在 core 中迁移 c.c/merge 后,在 transients 和 reduce 之后。保留旧版本作为 merge1 用于在新的定义前面使用的情况。让 APersistentMap/conj 和 ATransientMap/cons 知道 IKVReduce。
附带的补丁保留了 merge 的两种现有行为
- 元数据传播
- 合并的右侧可以是 Map.Entry、大小为 2 的 IPersistentVector 和普通映射。
通过请求筛选