Create a public varargs factory builder

This commit is contained in:
Joshua Suskalo 2021-09-17 10:51:40 -05:00
parent dc4013f7d4
commit e72d57c10f

View file

@ -649,6 +649,13 @@
(function-descriptor args ret)) (function-descriptor args ret))
(downcall-fn args ret))) (downcall-fn args ret)))
(defn make-varargs-factory
[symbol required-args ret]
(memoize
(fn [& types]
(let [args (concat required-args types)]
(make-downcall symbol args ret)))))
(s/def ::defcfn-args (s/def ::defcfn-args
(s/cat :name simple-symbol? (s/cat :name simple-symbol?
:doc (s/? string?) :doc (s/? string?)