Quote *ns* var in defstate macro to avoid aot compilation issues.

This commit is contained in:
Matt Russell 2017-01-13 07:38:28 +00:00
parent 94d6d0188a
commit fc62681570

View file

@ -136,7 +136,7 @@
(defmacro defstate [state & body]
(let [[state params] (macro/name-with-attributes state body)
{:keys [start stop] :as lifecycle} (apply hash-map params)
state-name (with-ns *ns* state)
state-name `(with-ns ~*ns* state)
order (make-state-seq state-name)]
(validate lifecycle)
(let [s-meta (cond-> {:order order
@ -151,7 +151,7 @@
#?(:clj
(defmacro defstate! [state & {:keys [start! stop!]}]
(let [state-name (with-ns *ns* state)]
(let [state-name `(with-ns ~*ns* state)]
`(defstate ~state
:start (~'let [~state (mount/current-state ~state-name)]
~start!)