sig
val find_index : ('a -> bool) -> 'a array -> int
val find_index_from : ('a -> bool) -> 'a array -> int -> int
val ensure : ('a -> bool) -> 'a array -> bool
val ensure_range : ('a -> bool) -> 'a array -> int -> int -> bool
val swap : 'a array -> int -> int -> unit
val rev : 'a array -> unit
val pop : 'a array -> 'a * 'a array
val push : 'a -> 'a array -> 'a array
val munge : cmp:('a -> 'a -> int) -> f:('b -> 'a) -> 'b array -> 'b array
val stable_munge :
cmp:('a -> 'a -> int) -> f:('b -> 'a) -> 'b array -> 'b array
val fast_munge :
cmp:('a -> 'a -> int) -> f:('b -> 'a) -> 'b array -> 'b array
end