函数{{defn}}的文档字符串是:
等同于(def name (fn [params* ] exprs*))或(def name (fn ([params* ] exprs*)+),其中可以添加任何文档字符串或属性到var元数据中。prepost-map定义了一个具有可选键:pre和:post的map,其中包含前置或后置条件集合。
参数列表是:
(defn name doc-string? attr-map? [params*] prepost-map? body)
有两个问题使我对这个文档字符串难以理解:
1. 文档字符串没有提到{{attr-map?}} - 我在文档中跳来跳去,才从{{attr-map?}}联想到“[...]属性添加到var元数据”。
2. 文档字符串提到了{{exprs*}},但参数列表中写道{{body}}。