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 1434
1434
cljs.analyzer/*cljs-file*)))))
1435
1435
(assoc m test expr)))
1436
1436
1437
+ (defn- const? [env x]
1438
+ (core/let [m (core/and (core/list? x)
1439
+ (ana/resolve-var env (last x)))]
1440
+ (core/when m (core/get m :const ))))
1441
+
1437
1442
(defmacro case
1438
1443
" Takes an expression, and a set of clauses.
1439
1444
1481
1486
(assoc-test m test expr env)))
1482
1487
{} (partition 2 clauses))
1483
1488
esym (gensym )
1484
- const? #(:const (and (list? %) (ana/resolve-var env (last %))))
1485
1489
tests (keys pairs)]
1486
1490
(cond
1487
- (every? (some-fn core/number? core/string? core/char? const?) tests)
1491
+ (every? (some-fn core/number? core/string? core/char? #( const? env %) ) tests)
1488
1492
(core/let [no-default (if (odd? (count clauses)) (butlast clauses) clauses)
1489
1493
tests (mapv #(if (seq? %) (vec %) [%]) (take-nth 2 no-default))
1490
1494
thens (vec (take-nth 2 (drop 1 no-default)))]
You can’t perform that action at this time.
0 commit comments