This commit is contained in:
Simon Cruanes 2022-10-26 23:03:36 -04:00
parent 01a15ef0ed
commit adfe52bf1f
No known key found for this signature in database
GPG key ID: EBFFF6F283F3A2B4
2 changed files with 8 additions and 0 deletions

View file

@ -44,6 +44,13 @@ let lazy_map2 f x y =
(let (lazy x) = x and (lazy y) = y in
f x y)
let[@inline] swap_array a i j : unit =
if i != j then (
let tmp = a.(i) in
a.(i) <- a.(j);
a.(j) <- tmp
)
let setup_gc () =
let g = Gc.get () in
Gc.set

View file

@ -17,6 +17,7 @@ val array_to_list_map : ('a -> 'b) -> 'a array -> 'b list
val lazy_map : ('a -> 'b) -> 'a lazy_t -> 'b lazy_t
val lazy_map2 : ('a -> 'b -> 'c) -> 'a lazy_t -> 'b lazy_t -> 'c lazy_t
val array_iteri2 : f:(int -> 'a -> 'b -> unit) -> 'a array -> 'b array -> unit
val swap_array : 'a array -> int -> int -> unit
val setup_gc : unit -> unit
(** Change parameters of the GC *)