From 5378cd45ac34551ea4d265f41b489ff386ea1a49 Mon Sep 17 00:00:00 2001 From: filliatr Date: Wed, 21 Jun 2000 01:15:42 +0000 Subject: portage EAuto et Ring git-svn-id: svn+ssh://scm.gforge.inria.fr/svn/coq/trunk@513 85f007b7-540e-0410-9357-904b9bb8a0f7 --- lib/util.ml | 5 +++++ lib/util.mli | 1 + 2 files changed, 6 insertions(+) (limited to 'lib') diff --git a/lib/util.ml b/lib/util.ml index cc2f514a40..e17e586c20 100644 --- a/lib/util.ml +++ b/lib/util.ml @@ -206,6 +206,11 @@ let list_firstn n l = in aux [] (n,l) +let rec list_last = function + | [] -> failwith "list_last" + | [x] -> x + | _ :: l -> list_last l + let list_lastn n l = let len = List.length l in let rec aux m l = diff --git a/lib/util.mli b/lib/util.mli index 2a8b3ced50..35d181098d 100644 --- a/lib/util.mli +++ b/lib/util.mli @@ -67,6 +67,7 @@ val list_uniquize : 'a list -> 'a list val list_subset : 'a list -> 'a list -> bool val list_splitby : ('a -> bool) -> 'a list -> 'a list * 'a list val list_firstn : int -> 'a list -> 'a list +val list_last : 'a list -> 'a val list_lastn : int -> 'a list -> 'a list val list_prefix_of : 'a list -> 'a list -> bool (* [map_append f [x1; ...; xn]] returns [(f x1)@(f x2)@...@(f xn)] *) -- cgit v1.2.3