minor fixes
This commit is contained in:
@@ -2,7 +2,6 @@
|
|||||||
(:require
|
(:require
|
||||||
[auto-ap.datomic :refer [conn remove-nils]]
|
[auto-ap.datomic :refer [conn remove-nils]]
|
||||||
[auto-ap.time :as atime]
|
[auto-ap.time :as atime]
|
||||||
[auto-ap.async-error :as aerror]
|
|
||||||
[clj-http.client :as client]
|
[clj-http.client :as client]
|
||||||
[clj-time.coerce :as coerce]
|
[clj-time.coerce :as coerce]
|
||||||
[clj-time.core :as time]
|
[clj-time.core :as time]
|
||||||
@@ -16,7 +15,6 @@
|
|||||||
[cemerick.url :as url]
|
[cemerick.url :as url]
|
||||||
[datomic.api :as d]
|
[datomic.api :as d]
|
||||||
[slingshot.slingshot :refer [try+]]
|
[slingshot.slingshot :refer [try+]]
|
||||||
[unilog.context :as lc]
|
|
||||||
[manifold.executor :as ex]
|
[manifold.executor :as ex]
|
||||||
[manifold.deferred :as de]
|
[manifold.deferred :as de]
|
||||||
[manifold.time :as mt]
|
[manifold.time :as mt]
|
||||||
|
|||||||
@@ -1,54 +0,0 @@
|
|||||||
(ns auto-ap.async-error
|
|
||||||
#?(:clj
|
|
||||||
(:require [clojure.core.async])))
|
|
||||||
|
|
||||||
;; ---- Helpers Taken from Prismatic Schema -----------------------------------
|
|
||||||
|
|
||||||
#?(:clj
|
|
||||||
(defn cljs-env?
|
|
||||||
"Take the &env from a macro, and tell whether we are expanding into cljs."
|
|
||||||
[env]
|
|
||||||
(boolean (:ns env))))
|
|
||||||
|
|
||||||
#?(:clj
|
|
||||||
(defmacro if-cljs
|
|
||||||
"Return then if we are generating cljs code and else for Clojure code.
|
|
||||||
https://groups.google.com/d/msg/clojurescript/iBY5HaQda4A/w1lAQi9_AwsJ"
|
|
||||||
[then else]
|
|
||||||
(if (cljs-env? &env) then else)))
|
|
||||||
|
|
||||||
;; ---- Helpers ---------------------------------------------------------------
|
|
||||||
|
|
||||||
(defn throw-err [e]
|
|
||||||
(when (instance? #?(:clj Throwable :cljs js/Error) e) (throw e))
|
|
||||||
e)
|
|
||||||
|
|
||||||
;; ---- Public API ------------------------------------------------------------
|
|
||||||
|
|
||||||
#?(:clj
|
|
||||||
(defmacro <?
|
|
||||||
"Like <! but throws errors."
|
|
||||||
[ch]
|
|
||||||
`(if-cljs
|
|
||||||
(throw-err (cljs.core.async/<! ~ch))
|
|
||||||
(throw-err (clojure.core.async/<! ~ch)))))
|
|
||||||
|
|
||||||
#?(:clj
|
|
||||||
(defn <??
|
|
||||||
"Like <!! but throws errors."
|
|
||||||
[ch]
|
|
||||||
(throw-err (clojure.core.async/<!! ch))))
|
|
||||||
|
|
||||||
#?(:clj
|
|
||||||
(defmacro go-try
|
|
||||||
"Like go but catches the first thrown error and returns it."
|
|
||||||
[& body]
|
|
||||||
`(if-cljs
|
|
||||||
(cljs.core.async/go
|
|
||||||
(try
|
|
||||||
~@body
|
|
||||||
(catch js/Error e# e#)))
|
|
||||||
(clojure.core.async/go
|
|
||||||
(try
|
|
||||||
~@body
|
|
||||||
(catch Throwable t# t#))))))
|
|
||||||
Reference in New Issue
Block a user