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

欢迎!请参阅 关于 页面以了解有关该工作方式的更多信息。

0
编译器

当一个协议定义的方法有多个类型提示签名时,由于 `deftype` 会丢弃类型提示,因此无法使用 `deftype` 来实现它们。然后编译器会寻找合适的签名(即带有类型提示的签名),如果找不到它们就会抛出异常。

3 个答案

0

评论由 chrismgray 发布

Clojure-dev 讨论从这里开始:http://groups.google.com/group/clojure-dev/browse_thread/thread/1f106a21ec1ce3de

0

评论由 jafingerhut 发布

2012年8月19日发布的补丁 clj-957-allow-typehinting-of-method-signatures-in-deftype-patch2.txt 与 Chris Gray 于2012年3月22日发布的补丁 0001-Allow-for-typehinting-of-method-signatures-in-deftyp.patch 相同,除了它有一些更新过的上下文行,以便它可以干净地应用到最新的 master。

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