Skip to content

Commit 8477f19

Browse files
mfikesswannodette
authored andcommitted
CLJS-1652: Self-host: Avoid alias so cljs.spec loadable
1 parent 6544a51 commit 8477f19

File tree

1 file changed

+7
-9
lines changed

1 file changed

+7
-9
lines changed

src/main/cljs/cljs/spec.cljc

Lines changed: 7 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,6 @@
1313
[cljs.spec.impl.gen :as gen]
1414
[clojure.string :as str]))
1515

16-
(alias 'c 'clojure.core)
17-
1816
(defn- ->sym
1917
"Returns a symbol from a symbol or var"
2018
[x]
@@ -23,7 +21,7 @@
2321
x))
2422

2523
(defn- unfn [expr]
26-
(if (c/and (seq? expr)
24+
(if (clojure.core/and (seq? expr)
2725
(symbol? (first expr))
2826
(= "fn*" (name (first expr))))
2927
(let [[[s] & form] (rest expr)]
@@ -33,7 +31,7 @@
3331
(defn- res [env form]
3432
(cond
3533
(keyword? form) form
36-
(symbol? form) (c/or (->> form (resolve env) ->sym) form)
34+
(symbol? form) (clojure.core/or (->> form (resolve env) ->sym) form)
3735
(sequential? form) (walk/postwalk #(if (symbol? %) (res env %) %) (unfn form))
3836
:else form))
3937

@@ -122,7 +120,7 @@
122120
(let [unk #(-> % name keyword)
123121
req-keys (filterv keyword? (flatten req))
124122
req-un-specs (filterv keyword? (flatten req-un))
125-
_ (assert (every? #(c/and (keyword? %) (namespace %)) (concat req-keys req-un-specs opt opt-un))
123+
_ (assert (every? #(clojure.core/and (keyword? %) (namespace %)) (concat req-keys req-un-specs opt opt-un))
126124
"all keys must be namespace-qualified keywords")
127125
req-specs (into req-keys req-un-specs)
128126
req-keys (into req-keys (map unk req-un-specs))
@@ -163,7 +161,7 @@
163161
keys (mapv first pairs)
164162
pred-forms (mapv second pairs)
165163
pf (mapv #(res &env %) pred-forms)]
166-
(assert (c/and (even? (count key-pred-forms)) (every? keyword? keys)) "spec/or expects k1 p1 k2 p2..., where ks are keywords")
164+
(assert (clojure.core/and (even? (count key-pred-forms)) (every? keyword? keys)) "spec/or expects k1 p1 k2 p2..., where ks are keywords")
167165
`(cljs.spec/or-spec-impl ~keys '~pf ~pred-forms nil)))
168166

169167
(defmacro and
@@ -206,7 +204,7 @@
206204
keys (mapv first pairs)
207205
pred-forms (mapv second pairs)
208206
pf (mapv #(res &env %) pred-forms)]
209-
(assert (c/and (even? (count key-pred-forms)) (every? keyword? keys)) "alt expects k1 p1 k2 p2..., where ks are keywords")
207+
(assert (clojure.core/and (even? (count key-pred-forms)) (every? keyword? keys)) "alt expects k1 p1 k2 p2..., where ks are keywords")
210208
`(cljs.spec/alt-impl ~keys ~pred-forms '~pf)))
211209

212210
(defmacro cat
@@ -222,7 +220,7 @@
222220
pred-forms (mapv second pairs)
223221
pf (mapv #(res &env %) pred-forms)]
224222
;;(prn key-pred-forms)
225-
(assert (c/and (even? (count key-pred-forms)) (every? keyword? keys)) "cat expects k1 p1 k2 p2..., where ks are keywords")
223+
(assert (clojure.core/and (even? (count key-pred-forms)) (every? keyword? keys)) "cat expects k1 p1 k2 p2..., where ks are keywords")
226224
`(cljs.spec/cat-impl ~keys ~pred-forms '~pf)))
227225

228226
(defmacro &
@@ -332,7 +330,7 @@ specified, return speced vars from all namespaces."
332330
(let [env &env
333331
qn (ns-qualify env fn-sym)]
334332
`(do ~@(reduce
335-
(c/fn [defns role]
333+
(clojure.core/fn [defns role]
336334
(if (contains? m role)
337335
(let [s (fn-spec-sym env qn (name role))]
338336
(conj defns `(cljs.spec/def '~s ~(get m role))))

0 commit comments

Comments
 (0)