aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorherbelin2002-10-14 08:47:51 +0000
committerherbelin2002-10-14 08:47:51 +0000
commit18947260e88d96a81429d82642d38f3ee962bb56 (patch)
tree652c2d965d24f2f36b953a36a21e8e6f48e61e74 /lib
parentf14c78df2be140c1c4c731d4d6010f114001b7cc (diff)
Ajout optino_iter
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@3136 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'lib')
-rw-r--r--lib/util.ml4
-rw-r--r--lib/util.mli1
2 files changed, 5 insertions, 0 deletions
diff --git a/lib/util.ml b/lib/util.ml
index 98defb6fd5..689f12558d 100644
--- a/lib/util.ml
+++ b/lib/util.ml
@@ -563,6 +563,10 @@ let option_compare f a b = match (a,b) with
| Some a', Some b' -> f a' b'
| _ -> failwith "option_compare"
+let option_iter f = function
+ | None -> ()
+ | Some x -> f x
+
let option_smartmap f a = match a with
| None -> a
| Some x -> let x' = f x in if x'==x then a else Some x'
diff --git a/lib/util.mli b/lib/util.mli
index 80b841b2b1..068ea256f5 100644
--- a/lib/util.mli
+++ b/lib/util.mli
@@ -173,6 +173,7 @@ val interval : int -> int -> int list
val in_some : 'a -> 'a option
val out_some : 'a option -> 'a
val option_app : ('a -> 'b) -> 'a option -> 'b option
+val option_iter : ('a -> unit) -> 'a option -> unit
val option_compare : ('a -> 'b -> bool) -> 'a option -> 'b option -> bool
val option_smartmap : ('a -> 'a) -> 'a option -> 'a option