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

欢迎!请参阅关于页面以获取更多关于此如何工作的信息。

0
REPL

user=> (source clojure.core.protocols/coll-reduce) 源未找到

但是,由于协议函数的var的元数据指向协议var,并且协议var知道它被定义的文件和行,因此可以通过提高‘source’功能来使其看起来像这样

user=> (source clojure.core.protocols/coll-reduce) (defprotocol CollReduce "Protocol for collection types that can implement reduce faster than first/next recursion. Called by clojure.core/reduce. Baseline implementation defined in terms of Iterable." (coll-reduce [coll f] [coll f val]))

3 答案

0

评论者:[email protected]

向clojure.repl/source添加一行补丁,以便它将找到特定协议函数的协议定义。

0

评论者:jafingerhut

修复0001-为repl-source添加对协议函数的支持.-CLJ-1088.patch现在不再干净地应用,这是因为在2014年1月31日提交到Clojure master之后所做的更改,这可能是由于CLJ-1176的修复。我还没有调查更新是否容易或困难。

0
...