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

欢迎!请查阅 关于页面 了解更多关于这是如何工作的信息。

+2
文档
已关闭

以下是来自 Clojure 1.8.0 的输出

`

user=> (doc if)

if
(if 测试 then else?)
特殊形式
评估测试。如果不是单值 nil 或 false,
评估并产生 then,否则,评估并产生 else。如果 else
未提供,则默认为 nil。

请参阅 https://clojure.org/special_forms#if
nil
`

以下是来自 Clojure 1.9.0 的对应输出

`

user=> (doc if)

if
(if 测试 then else?)
特殊形式
评估测试。如果不是单值 nil 或 false,
评估并产生 then,否则,评估并产生 else。如果 else
未提供,则默认为 nil。

请参阅 https://clojure.org/special_forms#if
评估测试。如果不是单值 nil 或 false,
评估并产生 then,否则,评估并产生 else。如果 else
未提供,则默认为 nil。
nil
`

这种重复只发生在调用 clojure.repl/doc 或 clojure.repl/print-doc 以打印特殊形式符号时的输出,而不是其他符号,如宏和函数。它在修改 clojure.repl/print-doc 以增加其输出中打印规范的功能时引入,而修复非常直接。

预先筛选: Alex Miller

已关闭,并标记为 修复

3 答案

0
 
最佳答案

已修复在 1.10.2-alpha2 中。

0

评论者:jafingerhut

修补方案CLJ-2295-v1.patch,日期为2017年12月15日,是解决该问题的可能方法之一。验证了其他情况(例如,宏)的输出与Clojure 1.8.0相同,除了新的Spec输出,应该保留。

0
参考: https://clojure.atlassian.net/browse/CLJ-2295(由jafingerhut报告)
...