ClojureDocs

命名空间

clojure.template

Macros that expand to repeated copies of a template expression.
clojure.template 中的 Vars

a

apply-template
在宏中使用。argv 是一个参数列表,如 defn。expr 是一个使用 argv 中符号的带引号的表达式。values 是一个用于参数的数值序列。apply-template 将递归地在 expr 中用相应的值替换参数符号,从而返回修改后的 expr。示例:(apply-template '[x] '(+ x x) '[2]) ;=> (+ 2 2)

d

do-template
针对 values 中的每组参数重复复制 expr(在一个 do 块中)。values 会自动按 defn 中参数向量的 argv 中的参数数量划分为不同的部分。示例:(macroexpand '(do-template [x y] (+ y x) 2 4 3 5)) ;=> (do (+ 4 2) (+ 5 3))