From a0d312fbd4b369386ef5e961916c32214317f20c Mon Sep 17 00:00:00 2001 From: anatoly Date: Wed, 30 Dec 2015 00:55:39 -0500 Subject: [PATCH] refactoring reader conditionals out of cljs exceptions macro (thx @DomKM) --- doc/img/cljs-ns-reload.png | Bin 0 -> 85433 bytes src/mount/core.cljc | 18 ++++++++++++++---- src/mount/tools/macro.cljc | 23 +++++++++++++++-------- 3 files changed, 29 insertions(+), 12 deletions(-) create mode 100644 doc/img/cljs-ns-reload.png diff --git a/doc/img/cljs-ns-reload.png b/doc/img/cljs-ns-reload.png new file mode 100644 index 0000000000000000000000000000000000000000..e71c2cff4a78f7824dcb54b53cccaf4ff9bd7a31 GIT binary patch literal 85433 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 J^U5;v{{j2nOL+hQ literal 0 HcmV?d00001 diff --git a/src/mount/core.cljc b/src/mount/core.cljc index 795075d..d872eb3 100644 --- a/src/mount/core.cljc +++ b/src/mount/core.cljc @@ -3,7 +3,7 @@ [clojure.string :as s]) :cljs (:require [mount.tools.macro :as macro])) #?(:cljs (:require-macros [mount.core] - [mount.tools.macro :refer [on-error throw-runtime]]))) + [mount.tools.macro :refer [if-clj on-error throw-runtime]]))) (defonce ^:private -args (atom :no-args)) ;; mostly for command line args and external files (defonce ^:private state-seq (atom 0)) @@ -51,7 +51,9 @@ [state] (when-let [{:keys [stop] :as up} (@running state)] (when stop - (prn (str "<< stopping.. " state " (namespace was recompiled)")) + (let [note (str "<< stopping.. " state " (namespace was recompiled)")] + #?(:clj (prn note) + :cljs (.log js/console note))) (stop)) (swap! running dissoc state))) @@ -86,7 +88,7 @@ (defn- up [state {:keys [start stop resume status] :as current} done] (when-not (:started status) - (let [s (on-error (str "could not start [" state "] due to") + (let [s (on-error (str "could not start [" state "] due to") (if (:suspended status) (record! state resume done) (record! state start done)))] @@ -129,6 +131,14 @@ (up name state (atom #{}))) @inst))) +#?(:clj + (defn log [msg] + (prn msg))) + +#?(:cljs + (defn log [msg] + (.log js/console msg))) + #?(:clj (defmacro defstate [state & body] (let [[state params] (macro/name-with-attributes state body) @@ -150,7 +160,7 @@ restart?# ((~'var mount.core/cleanup-if-dirty) ~state-name)] ((~'var mount.core/update-meta!) [~state-name] meta#) (~'when restart?# - (~'prn (str ">> starting.. " ~state-name " (namespace was recompiled)")) + (log (~'str ">> starting.. " ~state-name " (namespace was recompiled)")) ((~'var mount.core/up) ~state-name meta# (~'atom #{}))) (~'var ~state))))))) diff --git a/src/mount/tools/macro.cljc b/src/mount/tools/macro.cljc index f7449d0..dc46e24 100644 --- a/src/mount/tools/macro.cljc +++ b/src/mount/tools/macro.cljc @@ -1,19 +1,26 @@ (ns mount.tools.macro #?(:cljs (:require-macros [mount.tools.macro]))) +#?(:clj + (defmacro if-clj [then else] + (if (-> &env :ns not) + then + else))) + #?(:clj (defmacro on-error [msg f] - `(try - ~f - (catch #?(:clj Throwable - :cljs :default) t# - (throw #?(:clj (RuntimeException. ~msg t#) - :cljs (js/Error (str ~msg (.-stack t#))))))))) + `(if-clj + (try ~f + (catch Throwable t# + (throw (RuntimeException. ~msg t#)))) + (try ~f + (catch :default t# + (throw (~'str ~msg " " t#))))))) #?(:clj (defmacro throw-runtime [msg] - `(throw #?(:clj (RuntimeException. ~msg) - :cljs (js/Error (str ~msg)))))) + `(throw (if-clj (RuntimeException. ~msg) + (~'str ~msg))))) ;; this is a one to one copy from https://github.com/clojure/tools.macro ;; to avoid a lib dependency for a single function