File tree Expand file tree Collapse file tree 2 files changed +11
-0
lines changed Expand file tree Collapse file tree 2 files changed +11
-0
lines changed Original file line number Diff line number Diff line change 1306
1306
(back-references marker form)))
1307
1307
(range ))))
1308
1308
binding-dep? (->> gensym->deps vals (apply concat) set)
1309
+
1309
1310
body-dep? (->> `(let [~@(interleave
1310
1311
vars'
1311
1312
(repeat nil ))]
1312
1313
~@body)
1313
1314
(back-references marker)
1314
1315
(map (zipmap vars' gensyms))
1316
+ (concat (drop (count vars) gensyms))
1315
1317
set)
1316
1318
dep? (set/union binding-dep? body-dep?)]
1317
1319
`(let [executor# (manifold.executor/executor )]
Original file line number Diff line number Diff line change 73
73
(d/catch ArithmeticException (constantly :foo ))))))
74
74
75
75
(deftest test-let-flow
76
+
77
+ (let [flag (atom false )]
78
+ @(let [z (clojure.core/future 1 )]
79
+ (d/let-flow [x (d/future (clojure.core/future z))
80
+ _ (d/future (Thread/sleep 1000 ) (reset! flag true ))
81
+ y (d/future (+ z x))]
82
+ (d/future (+ x x y z))))
83
+ (is (= true @flag)))
84
+
76
85
(is (= 5
77
86
@(let [z (clojure.core/future 1 )]
78
87
(d/let-flow [x (d/future (clojure.core/future z))
You can’t perform that action at this time.
0 commit comments