diff options
| author | msozeau | 2011-08-10 14:27:41 +0000 |
|---|---|---|
| committer | msozeau | 2011-08-10 14:27:41 +0000 |
| commit | ce014bf1c0912a7a48025e6184a27bd929089252 (patch) | |
| tree | 4bdbfe817fa97d4fbfd635ec45667031a03bfd05 /lib/util.ml | |
| parent | 08502c0d2299ed820a07e76fe785b6330ff119cd (diff) | |
Added list_map_filter_i
git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@14397 85f007b7-540e-0410-9357-904b9bb8a0f7
Diffstat (limited to 'lib/util.ml')
| -rw-r--r-- | lib/util.ml | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/util.ml b/lib/util.ml index e9f87acb53..688d415840 100644 --- a/lib/util.ml +++ b/lib/util.ml @@ -695,6 +695,14 @@ let rec list_map_filter f = function let l' = list_map_filter f l in match f x with None -> l' | Some y -> y::l' +let list_map_filter_i f = + let rec aux i = function + | [] -> [] + | x::l -> + let l' = aux (succ i) l in + match f i x with None -> l' | Some y -> y::l' + in aux 0 + let list_subset l1 l2 = let t2 = Hashtbl.create 151 in List.iter (fun x -> Hashtbl.add t2 x ()) l2; |
