Back
apply-template (clj)
(source)function
(apply-template argv expr values)
For use in macros. argv is an argument list, as in defn. expr is
a quoted expression using the symbols in argv. values is a sequence
of values to be used for the arguments.
apply-template will recursively replace argument symbols in expr
with their corresponding values, returning a modified expr.
Example: (apply-template '[x] '(+ x x) '[2])
;=> (+ 2 2)
Examples
reborg/clojure-essential-reference
(require '[clojure.template :refer [apply-template]])
(apply-template '[x] '(let [x x] x) [1]) ; <1>
; (let [1 1] 1)
reborg/clojure-essential-reference
(require '[clojure.template :refer [apply-template]])
(apply-template '[x y] '(+ x y x) [1 2]) ; <1>
; (+ 1 2 1)