【发布时间】:2014-03-12 21:25:02
【问题描述】:
到目前为止,这是我找到的解决方案,但我相信它不是很地道......
动态扩展 reify 有什么更好的建议吗?
更新!
我的想法是在执行当前 reify 实现的某些功能之前添加对 println 的调试调用。在提供的示例中,我向当前实现添加了一个短字符串。其他情况可能是您可以在 AspectOrientedProgramming 上找到的计时或公共方面
谢谢!
(def r (let [f "foo"]
(reify Object
(toString [this]
f))))
(str r) ; == "foo"
(def r-extended (let [f "extended"]
(reify Object
(toString [this]
(str f "-"(str r))))))
(str r-extended) ; == "extended-foo"
【问题讨论】:
-
请补充一些关于为什么需要扩展
reify的散文 - 你真正想要解决的目标是什么? -
好主意@Shepmaster!现在更新了一个描述问题
标签: clojure