File tree Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Expand file tree Collapse file tree 1 file changed +6
-2
lines changed Original file line number Diff line number Diff line change 1440
1440
cljs.analyzer/*cljs-file*)))))
1441
1441
(assoc m test expr)))
1442
1442
1443
+ (defn- const? [env x]
1444
+ (core/let [m (core/and (core/list? x)
1445
+ (ana/resolve-var env (last x)))]
1446
+ (core/when m (core/get m :const ))))
1447
+
1443
1448
(defmacro case
1444
1449
" Takes an expression, and a set of clauses.
1445
1450
1487
1492
(assoc-test m test expr env)))
1488
1493
{} (partition 2 clauses))
1489
1494
esym (gensym )
1490
- const? #(:const (and (list? %) (ana/resolve-var env (last %))))
1491
1495
tests (keys pairs)]
1492
1496
(cond
1493
- (every? (some-fn core/number? core/string? core/char? const?) tests)
1497
+ (every? (some-fn core/number? core/string? core/char? #( const? env %) ) tests)
1494
1498
(core/let [no-default (if (odd? (count clauses)) (butlast clauses) clauses)
1495
1499
tests (mapv #(if (seq? %) (vec %) [%]) (take-nth 2 no-default))
1496
1500
thens (vec (take-nth 2 (drop 1 no-default)))]
You can’t perform that action at this time.
0 commit comments