diff options
Diffstat (limited to 'lib')
| -rw-r--r-- | lib/util.ml | 4 | ||||
| -rw-r--r-- | lib/util.mli | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/lib/util.ml b/lib/util.ml index dc25caefee..38eb88ebfa 100644 --- a/lib/util.ml +++ b/lib/util.ml @@ -737,6 +737,10 @@ let option_fold_left2 f e a b = match (a,b) with | Some x, Some y -> f e x y | _ -> e +let option_fold_left f e a = match a with + | Some x -> f e x + | _ -> e + let option_fold_right f a e = match a with | Some x -> f x e | _ -> e diff --git a/lib/util.mli b/lib/util.mli index 9951aa1c57..f38f36740c 100644 --- a/lib/util.mli +++ b/lib/util.mli @@ -209,6 +209,7 @@ val out_some : 'a option -> 'a val option_map : ('a -> 'b) -> 'a option -> 'b option val option_cons : 'a option -> 'a list -> 'a list val option_fold_right : ('a -> 'b -> 'b) -> 'a option -> 'b -> 'b +val option_fold_left : ('a -> 'b -> 'a) -> 'a -> 'b option -> 'a val option_fold_left2 : ('a -> 'b -> 'c -> 'a) -> 'a -> 'b option -> 'c option -> 'a val option_iter : ('a -> unit) -> 'a option -> unit |
