当前函数实例以混淆的Java名称打印它们的toString()
`
user=> (ns proj.util-fns)
nil
proj.util-fns=> (defn a->b [a] (inc a))
'proj.util-fns/a->b
proj.util-fns=> a->b
object[proj.util_fns$a__GT_b 0x141ba1f1 "proj.util_fns$a__GT_b@141ba1f1"]
`
出于调试目的,让函数toString()描述以Clojure为导向的函数名称将很有用。
方法:在函数实例中存储原始名称并在toString()中使用它,而不是返回类名。
`
proj.util-fns=> a->b
object[proj.util_fns$a__GT_b 0x47d1a507 "proj.util-fns/a->b(NO_SOURCE_FILE:2)"]
`
权衡:函数实例大小说明增加了。
补丁: CLJ-1278-2.patch