OCaml library : Dynarray

`sig
type !'a t
val create : unit -> 'a Dynarray.t
val make : int -> 'a -> 'a Dynarray.t
val init : int -> (int -> 'a) -> 'a Dynarray.t
val get : 'a Dynarray.t -> int -> 'a
val set : 'a Dynarray.t -> int -> 'a -> unit
val length : 'a Dynarray.t -> int
val is_empty : 'a Dynarray.t -> bool
val get_last : 'a Dynarray.t -> 'a
val find_last : 'a Dynarray.t -> 'a option
val copy : 'a Dynarray.t -> 'a Dynarray.t
val add_last : 'a Dynarray.t -> 'a -> unit
val append_array : 'a Dynarray.t -> 'a array -> unit
val append_list : 'a Dynarray.t -> 'a list -> unit
val append : 'a Dynarray.t -> 'a Dynarray.t -> unit
val append_seq : 'a Dynarray.t -> 'a Stdlib.Seq.t -> unit
val append_iter :
'a Dynarray.t -> (('a -> unit) -> 'x -> unit) -> 'x -> unit
val blit :
src:'a Dynarray.t ->
src_pos:int -> dst:'a Dynarray.t -> dst_pos:int -> len:int -> unit
val pop_last_opt : 'a Dynarray.t -> 'a option
val pop_last : 'a Dynarray.t -> 'a
val remove_last : 'a Dynarray.t -> unit
val truncate : 'a Dynarray.t -> int -> unit
val clear : 'a Dynarray.t -> unit
val iter : ('a -> unit) -> 'a Dynarray.t -> unit
val iteri : (int -> 'a -> unit) -> 'a Dynarray.t -> unit
val map : ('a -> 'b) -> 'a Dynarray.t -> 'b Dynarray.t
val mapi : (int -> 'a -> 'b) -> 'a Dynarray.t -> 'b Dynarray.t
val fold_left : ('acc -> 'a -> 'acc) -> 'acc -> 'a Dynarray.t -> 'acc
val fold_right : ('a -> 'acc -> 'acc) -> 'a Dynarray.t -> 'acc -> 'acc
val filter : ('a -> bool) -> 'a Dynarray.t -> 'a Dynarray.t
val filter_map : ('a -> 'b option) -> 'a Dynarray.t -> 'b Dynarray.t
val exists : ('a -> bool) -> 'a Dynarray.t -> bool
val for_all : ('a -> bool) -> 'a Dynarray.t -> bool
val exists2 : ('a -> 'b -> bool) -> 'a Dynarray.t -> 'b Dynarray.t -> bool
val for_all2 : ('a -> 'b -> bool) -> 'a Dynarray.t -> 'b Dynarray.t -> bool
val mem : 'a -> 'a Dynarray.t -> bool
val memq : 'a -> 'a Dynarray.t -> bool
val find_opt : ('a -> bool) -> 'a Dynarray.t -> 'a option
val find_index : ('a -> bool) -> 'a Dynarray.t -> int option
val find_map : ('a -> 'b option) -> 'a Dynarray.t -> 'b option
val find_mapi : (int -> 'a -> 'b option) -> 'a Dynarray.t -> 'b option
val equal : ('a -> 'a -> bool) -> 'a Dynarray.t -> 'a Dynarray.t -> bool
val compare : ('a -> 'a -> int) -> 'a Dynarray.t -> 'a Dynarray.t -> int
val of_array : 'a array -> 'a Dynarray.t
val to_array : 'a Dynarray.t -> 'a array
val of_list : 'a list -> 'a Dynarray.t
val to_list : 'a Dynarray.t -> 'a list
val of_seq : 'a Stdlib.Seq.t -> 'a Dynarray.t
val to_seq : 'a Dynarray.t -> 'a Stdlib.Seq.t
val to_seq_reentrant : 'a Dynarray.t -> 'a Stdlib.Seq.t
val to_seq_rev : 'a Dynarray.t -> 'a Stdlib.Seq.t
val to_seq_rev_reentrant : 'a Dynarray.t -> 'a Stdlib.Seq.t
val capacity : 'a Dynarray.t -> int
val ensure_capacity : 'a Dynarray.t -> int -> unit
val ensure_extra_capacity : 'a Dynarray.t -> int -> unit
val fit_capacity : 'a Dynarray.t -> unit
val set_capacity : 'a Dynarray.t -> int -> unit
val reset : 'a Dynarray.t -> unit
val unsafe_to_iarray : capacity:int -> ('a Dynarray.t -> unit) -> 'a iarray
end`