我正在調查codox。我知道docstrings被解析並顯示,但我可以啓用^{:doc "Description"}
來解析?例如,這個工程Clojure,Codox:如何使用:doc元數據而不是docstring?
(defn get-foo "Get the Foo" [] @foo)
但不是這個
(defn get-foo ^{:doc "Get the Foo"} [] @foo)
我正在調查codox。我知道docstrings被解析並顯示,但我可以啓用^{:doc "Description"}
來解析?例如,這個工程Clojure,Codox:如何使用:doc元數據而不是docstring?
(defn get-foo "Get the Foo" [] @foo)
但不是這個
(defn get-foo ^{:doc "Get the Foo"} [] @foo)
如文件here所示,defn將接受一個「attr」地圖,該地圖可以通過關鍵字:doc
包含文檔。所以這將工作。
user> (defn get-foo {:doc "Get the foo"} [foo] @foo)
#'user/get-foo
user> (meta get-foo)
{:doc "Get the foo"}
但是你已經使用了^
讀者宏不添加第一個下面的形式(地圖)作爲元數據的符號get-foo
,但是到了第二下面的表格,你的參數向量。 defn和def宏不會檢查元數據的參數向量,因此您顯然的文檔字符串將被忽略。
user> ^{:doc "foo"} []
[]
user> (meta ^{:doc "foo"} [])
{:doc "foo"}
這其中^不是:文檔註釋去。它位於函數名稱之前,因爲您試圖將元數據附加到函數名稱的符號。這與codox無關,但是關於clojure元數據和文檔是一個普遍的事情。
刪除脫字符。你想要的是在那個地方傳遞一個屬性地圖,而不是元數據。這應該工作:
(defn get-foo {:doc "Get the foo"} [foo] @foo)