aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorfilliatr2001-05-09 14:37:42 +0000
committerfilliatr2001-05-09 14:37:42 +0000
commit8b0bab9313d9b26e6c9f132e82473b4db9a4832d (patch)
treedc352810c9df3c47aa0ccb9198e3e8dfd0fd3a10 /lib
parent0f23050eaf1271fc143c8698e830d83c2240926c (diff)
nettoyage extraction
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@1737 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 cd32737d2e..0c3c038dd2 100644
--- a/lib/util.ml
+++ b/lib/util.ml
@@ -434,6 +434,10 @@ let iterate f =
let repeat n f x =
for i = 1 to n do f x done
+
+let iterate_for a b f x =
+ let rec iterate i v = if i > b then v else iterate (succ i) (f i v) in
+ iterate a x
(* Misc *)
diff --git a/lib/util.mli b/lib/util.mli
index 5122df3e89..d5976baf1d 100644
--- a/lib/util.mli
+++ b/lib/util.mli
@@ -130,6 +130,7 @@ val matrix_transpose : 'a list list -> 'a list list
val compose : ('a -> 'b) -> ('c -> 'a) -> 'c -> 'b
val iterate : ('a -> 'a) -> int -> 'a -> 'a
val repeat : int -> ('a -> unit) -> 'a -> unit
+val iterate_for : int -> int -> (int -> 'a -> 'a) -> 'a -> 'a
(*s Misc. *)