babashka/test-resources/lib_tests/orchestra/make_fns.cljc
2021-12-08 22:57:16 +01:00

15 lines
573 B
Clojure

(ns orchestra.make-fns
(:require #?@(:clj [[clojure.spec.alpha :as s]]
:cljs [[cljs.spec.alpha :as s]])))
#?(:clj (defmacro make-fns [fn-count]
(let [cljs? (-> &env :ns some?)]
`(do
~@(for [i (range fn-count)]
(let [fn-name (symbol (str "fn-" i))]
`(do
(defn ~fn-name []
(str ~fn-name))
(~(if cljs?
'cljs.spec.alpha/fdef
's/fdef) ~fn-name))))))))