2024年Clojure状态调研!分享你的想法。

欢迎!请查看关于页面了解如何使用本站。

0
Clojure

(assoc-in {} [] 1) ;=> {nil 1}

这可能应该抛出一个异常。

CLJ-373有一个补丁 ((链接:http://dev.clojure.org/jira/secure/attachment/12897/CLJ-373-nested-ops.patch 文件:CLJ-373-nested-ops.patch)) 用于修复这个问题(在空键路径上抛出异常),并处理 update-in 等相关错误行为,以及在一等函数中的空键路径行为。我可以用一个单独的补丁提取其中的 assoc-in 部分,但我希望所有问题都在这个补丁中一次解决,即。

(get-in {} [] :notfound) ;=> {} ; ok (get-in {nil 1} [] :notfound) ;=> {nil 1} ; ok (assoc-in {} [] 1) ;=> {nil 1} ; 烂? (assoc-in {nil 0} [] 1) ;=> {nil 1} ; 烂? (update-in {} [] identity) ;=> {nil nil} ; 烂? (update-in {nil 0} [] inc) ;=> {nil 1} ; 烂?

1 个答案

0
...