有没有一种方法可以在不使用
eval
的情况下检索Clojure宏中参数的元数据?到目前为止,我能想到的唯一方法是:(def ^{:a :b} my-var)
(defmacro my-macro [s] (prn (eval `(meta (var ~s)))))
(my-macro my-var)
;; Prints {:a :b, :name my-var, ...}