请在 2024 Clojure 状态调查!中分享您的想法。

欢迎!请参阅 关于 页面以了解更多关于如何使用此站点的信息。

0 票:
Clojure

clojure.inspector/inspect-table 在遇到 coll 的第一个元素为 nil 时放弃。提供的补丁相当简单...不再盲目选择第一个元素(可能为 nil),而是选择第一个非 nil 的元素,并使用其键作为列...clojure.pprint/print-table 也存在类似问题,如果未显式提供,则使用第一个元素的关键字。然而,'inspect-table' 并不是这样。因此,无法对第一个元素为 nil 的映射集合进行检查。我的(简单的)补丁寻找第一个非 nil 的元素,并使用其键。由于映射必须具有相同长度,因此不会有问题...

3 个回答

0 票:

评论由:jafingerhut

2012 年 7 月 12 日的 “clj-1020-inspect-table-skip-nil-rows-patch1.txt” 与 7 月 2 日的 inspector.patch 完全相同,除了它是所需的 git 格式。在补丁中给出了对作者 Dimitrios Piliouras 的适当归属。

0 票:

评论由: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 测试。

0 票:
by
参考: https://clojure.atlassian.net/browse/CLJ-1020 (由 jimpil 报告)
...