欢迎!请参阅 关于 页面以了解更多关于如何使用此站点的信息。
clojure.inspector/inspect-table 在遇到 coll 的第一个元素为 nil 时放弃。提供的补丁相当简单...不再盲目选择第一个元素(可能为 nil),而是选择第一个非 nil 的元素,并使用其键作为列...clojure.pprint/print-table 也存在类似问题,如果未显式提供,则使用第一个元素的关键字。然而,'inspect-table' 并不是这样。因此,无法对第一个元素为 nil 的映射集合进行检查。我的(简单的)补丁寻找第一个非 nil 的元素,并使用其键。由于映射必须具有相同长度,因此不会有问题...
评论由:jafingerhut
2012 年 7 月 12 日的 “clj-1020-inspect-table-skip-nil-rows-patch1.txt” 与 7 月 2 日的 inspector.patch 完全相同,除了它是所需的 git 格式。在补丁中给出了对作者 Dimitrios Piliouras 的适当归属。
评论由:jimpil
我实际上是将 "clj-1020-inspect-table-skip-nil-rows-patch1.txt" 中的内容复制到 "clj-1020-inspect-table-skip-nil-rows-patch2.txt" 中,只是将
(some #(when-not (nil? %) %) data)改为(some identity data)
这使得代码更漂亮、更简洁且更快,因为我们跳过了内部 nil 测试。