标签: clojure clojurescript
是否可以在调用者命名空间中的宏解析中使用限定关键字?例如:
(ns a) (defmacro m [] `(do ::k))
在另一个名称空间中:
(ns b) (use 'a) (m)
在此示例中,(m)解析为:a/k(定义宏的命名空间)。我想知道是否有办法让它解析为:b/k(宏名为的名称空间)。
(m)
:a/k
:b/k
答案 0 :(得分:5)
(defmacro m [] (keyword (name (ns-name *ns*)) "k"))