aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
Diffstat (limited to 'lib')
-rw-r--r--lib/util.ml5
-rw-r--r--lib/util.mli1
2 files changed, 6 insertions, 0 deletions
diff --git a/lib/util.ml b/lib/util.ml
index ba3d2c6d28..f3b7c99e90 100644
--- a/lib/util.ml
+++ b/lib/util.ml
@@ -1109,6 +1109,11 @@ let array_union_map f a acc =
acc
a
+let array_rev_to_list a =
+ let rec tolist i res =
+ if i >= Array.length a then res else tolist (i+1) (a.(i) :: res) in
+ tolist 0 []
+
(* Matrices *)
let matrix_transpose mat =
diff --git a/lib/util.mli b/lib/util.mli
index f900e9bf71..80f2fda380 100644
--- a/lib/util.mli
+++ b/lib/util.mli
@@ -253,6 +253,7 @@ val array_fold_map2' :
('a -> 'b -> 'c -> 'd * 'c) -> 'a array -> 'b array -> 'c -> 'd array * 'c
val array_distinct : 'a array -> bool
val array_union_map : ('a -> 'b -> 'b) -> 'a array -> 'b -> 'b
+val array_rev_to_list : 'a array -> 'a list
(*s Matrices *)