Skip to content

Commit c6fdc24

Browse files
committed
tighten vector ops
1 parent 36ce7f2 commit c6fdc24

File tree

1 file changed

+9
-7
lines changed

1 file changed

+9
-7
lines changed

src/java_time/graph.cljc

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -53,11 +53,12 @@
5353
(def max-extent 2)
5454

5555
(defn types [ts]
56-
(let [cnt (count ts)]
56+
(let [ts (vec ts)
57+
cnt (count ts)]
5758
(when (> cnt max-arity)
5859
(throw (ex-info (format "Maximum arity supported by conversion graph is %s!" max-arity)
5960
{:types ts})))
60-
(Types. (vec ts) cnt)))
61+
(Types. ts cnt)))
6162

6263
(defn- assignable-type? [a b]
6364
(or (= a b) (.isAssignableFrom ^Class b a)))
@@ -125,8 +126,8 @@
125126
(defn- collect-targets [v]
126127
(reduce
127128
(fn [r [k v]]
128-
(concat r (cond-> v
129-
(map? v) collect-targets)))
129+
(into r (cond-> v
130+
(map? v) collect-targets)))
130131
[] v))
131132

132133
(defn- add-conversion [m ^Types src dst conversion]
@@ -218,9 +219,10 @@
218219
(recur))))))))))
219220

220221
(defn- replace-range [v replacement idxs]
221-
(concat (subvec v 0 (first idxs))
222-
replacement
223-
(subvec v (inc (peek idxs)) (count v))))
222+
(-> v
223+
(subvec 0 (first idxs))
224+
(into replacement)
225+
(into (subvec v (inc (peek idxs)) (count v)))))
224226

225227
(defn- index-conversions [^Types src idxs [[_ ^Types replacement] ^Conversion conv]]
226228
[src

0 commit comments

Comments
 (0)