【发布时间】:2014-08-25 02:11:26
【问题描述】:
我看到对于在clojure.tools.macro 库中编写类似defn 的宏的任何人来说,它有望成为一个漂亮的工具:name-with-attributes 函数。文档字符串说:
用于宏定义。 处理要定义的名称的可选文档字符串和属性映射 在宏参数列表中。如果第一个宏参数是字符串, 它作为文档字符串添加到 name 并从宏参数中删除 列表。如果之后第一个宏参数是一个映射,它的条目是 添加到名称的元数据映射中,并且该映射从 宏参数列表。返回值是一个包含名称的向量 及其扩展的元数据映射和未处理的宏列表 论据。
但我似乎无法在任何地方找到使用此功能的示例。
那么,我如何使用这个函数来定义一个defn2 宏,它应该是clojure.core/defn 的克隆,包含所有相同的功能,包括:
- 文档字符串
- 属性图
- 先决条件
- 多民族
【问题讨论】: