关于Clojure的命名空间中的每个函数添加调试跟踪,可以使用以下方法:
defn
定义函数时,在函数体内使用tap>
宏来输出调试信息。例如:
(defn my-function [x y]
(tap> (str "Entering my-function with x=" x " and y=" y))
(+ x y))
with-redefs
宏来重定义函数,在重定义的函数中添加调试信息。例如:
(defn my-function [x y]
(+ x y))
(defn my-function-with-debug [x y]
(println "Entering my-function with x=" x " and y=" y)
(my-function x y))
(with-redefs [my-function my-function-with-debug]
(my-function 1 2))
clojure.tools.trace
库来添加函数调用跟踪。例如:
(require '[clojure.tools.trace :as trace])
(defn my-function [x y]
(+ x y))
(trace/trace-ns 'my-namespace)
(my-function 1 2)
这些方法可以帮助你在Clojure的命名空间中为每个函数添加调试跟踪。
领取专属 10元无门槛券
手把手带您无忧上云