diff options
author | Maxime Dénès <mail@maximedenes.fr> | 2017-03-20 14:01:05 +0100 |
---|---|---|
committer | Maxime Dénès <mail@maximedenes.fr> | 2017-03-20 14:01:05 +0100 |
commit | fbd4464f4a43a714a6356db9caa704983190d212 (patch) | |
tree | 89a1937e3f28baa23e2b579df6f13a30621acfc4 /lib/future.ml | |
parent | 75dad64e8c5d7c09145491518290bdb749b2d03c (diff) | |
parent | 3502cc7c3bbad154dbfe76558d411d2c76109668 (diff) |
Merge PR#479: [future] Remove unused parameter greedy.
Diffstat (limited to 'lib/future.ml')
-rw-r--r-- | lib/future.ml | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/lib/future.ml b/lib/future.ml index ea0382a63..b60b32bb6 100644 --- a/lib/future.ml +++ b/lib/future.ml @@ -191,9 +191,9 @@ let transactify f x = let purify_future f x = if is_over x then f x else purify f x let compute x = purify_future (compute ~pure:false) x let force ~pure x = purify_future (force ~pure) x -let chain ?(greedy=true) ~pure x f = +let chain ~pure x f = let y = chain ~pure x f in - if is_over x && greedy then ignore(force ~pure y); + if is_over x then ignore(force ~pure y); y let force x = force ~pure:false x @@ -204,13 +204,13 @@ let join kx = let sink kx = if is_val kx then ignore(join kx) -let split2 ?greedy x = - chain ?greedy ~pure:true x (fun x -> fst x), - chain ?greedy ~pure:true x (fun x -> snd x) +let split2 x = + chain ~pure:true x (fun x -> fst x), + chain ~pure:true x (fun x -> snd x) -let map2 ?greedy f x l = +let map2 f x l = CList.map_i (fun i y -> - let xi = chain ?greedy ~pure:true x (fun x -> + let xi = chain ~pure:true x (fun x -> try List.nth x i with Failure _ | Invalid_argument _ -> CErrors.anomaly (Pp.str "Future.map2 length mismatch")) in |