Skip to content

Commit 284872f

Browse files
author
dnolen
committed
two more micro-opts
1 parent c3732db commit 284872f

File tree

2 files changed

+10
-4
lines changed

2 files changed

+10
-4
lines changed

src/main/clojure/cljs/analyzer.cljc

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3296,13 +3296,18 @@
32963296
"Mark a form as being analyzed. Assumes x satisfies IMeta. Useful to suppress
32973297
warnings that will have been caught by a first compiler pass."
32983298
[x]
3299-
(vary-meta x assoc ::analyzed true))
3299+
(cond
3300+
(map? x) (assoc x ::analyzed true)
3301+
:else (vary-meta x assoc ::analyzed true)))
33003302

33013303
(defn analyzed?
33023304
"Returns boolean if the form has already been marked as analyzed."
33033305
#?(:cljs {:tag boolean})
33043306
[x]
3305-
(boolean (::analyzed (meta x))))
3307+
(boolean
3308+
(cond
3309+
(map? x) (::analyzed x)
3310+
:else (::analyzed (meta x)))))
33063311

33073312
(defn- all-values?
33083313
#?(:cljs {:tag boolean})

src/main/clojure/cljs/compiler.cljc

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@
6565
ns
6666
(subs ns 0 idx))))
6767

68-
(defn find-ns-starts-with [needle]
68+
(defn ^:dynamic find-ns-starts-with [needle]
6969
(reduce-kv
7070
(fn [xs ns _]
7171
(when (= needle (get-first-ns-segment ns))
@@ -1473,7 +1473,8 @@
14731473
(atom
14741474
{:source-map (sorted-map)
14751475
:gen-col 0
1476-
:gen-line 0}))]
1476+
:gen-line 0}))
1477+
find-ns-starts-with (memoize find-ns-starts-with)]
14771478
(emitln (compiled-by-string opts))
14781479
(with-open [rdr (io/reader src)]
14791480
(let [env (ana/empty-env)]

0 commit comments

Comments
 (0)