sig
type 'a t
type 'a fill = Elem of 'a | Susp of (int -> 'a)
val max_init_index : 'a GrowArray.t -> int
val reset_max_init_index : 'a GrowArray.t -> unit
val getg : 'a GrowArray.t -> int -> 'a
val setg : 'a GrowArray.t -> int -> 'a -> unit
val get : 'a GrowArray.t -> int -> 'a
val set : 'a GrowArray.t -> int -> 'a -> unit
val make : int -> 'a GrowArray.fill -> 'a GrowArray.t
val clear : 'a GrowArray.t -> unit
val copy : 'a GrowArray.t -> 'a GrowArray.t
val deep_copy : 'a GrowArray.t -> ('a -> 'a) -> 'a GrowArray.t
val iter : ('a -> unit) -> 'a GrowArray.t -> unit
val iteri : (int -> 'a -> unit) -> 'a GrowArray.t -> unit
val iter2 :
(int -> 'a -> 'b -> unit) -> 'a GrowArray.t -> 'b GrowArray.t -> unit
val fold_left : ('a -> 'b -> 'a) -> 'a -> 'b GrowArray.t -> 'a
val fold_right : ('a -> 'b -> 'b) -> 'a GrowArray.t -> 'b -> 'b
val d_growarray :
Pretty.doc ->
(int -> 'a -> Pretty.doc) -> unit -> 'a GrowArray.t -> Pretty.doc
val restoreGA : ?deepCopy:('a -> 'a) -> 'a GrowArray.t -> unit -> unit
val find : 'a GrowArray.t -> ('a -> bool) -> int option
end