分享您的想法,参与 2024 Clojure 状态调查!

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

0 投票
Clojure

在 Clojure 中,该概念已经存在于多个位置 - Compiler$CompilerException 和 EdnReader 和 LispReader 中埋藏的 Exception 类。它也适用于其他一些地方,比如抛出 IllegalArgunent 或其他异常的地方。

例如,这个协议异常抛出 IllegalArgumentException,并能在错误发生位置的文件、行和列信息,但它似乎奇怪地使用现有的异常来完成这个目的。

(defprotocol Bar (m [this]) (m [this arg]))

2 答案

0 投票

评论由:hiredman 添加

看起来 ExceptionInfo 可以做到这一点

0 投票
参考资料: https://clojure.atlassian.net/browse/CLJ-1280 (由 alexmiller 报告)
...