评论:bbloom
我查找这个票据是因为我遇到了一个反射警告:“with-open”没有提示与java.io.Closeable的绑定。
关于补丁的反馈
1) 对于依赖于close方法的duck-typed的任何人来说,这是一个破坏性变化。
2) CloseableResource有点长。clojure.core.protocols.Closeable足够清楚。
而不是将CloseableResource扩展为java.io.Closeable,你可以使用不为人知的(未记录的?不受支持的?):on-interface指令
(defprotocol Closeable :on-interface java.io.Closeable (close [this]))
这将比现有的补丁表现得更好。