2020-04-01 16:14:43 +02:00
|
|
|
open Simple_utils.Trace
|
2020-02-11 18:55:31 +01:00
|
|
|
|
2020-04-01 16:14:43 +02:00
|
|
|
let fold_map__list continue state v =
|
|
|
|
let aux = fun acc elt ->
|
|
|
|
let%bind (state , lst') = acc in
|
|
|
|
let%bind (state , elt') = continue state elt in
|
|
|
|
ok (state , elt' :: lst') in
|
|
|
|
List.fold_left aux (ok (state, [])) v
|
|
|
|
|
|
|
|
|
|
|
|
let fold_map__option continue state v =
|
2020-02-11 18:55:31 +01:00
|
|
|
match v with
|
2020-04-01 16:14:43 +02:00
|
|
|
Some x -> continue state x
|
|
|
|
| None -> ok None
|