type 'a t = 'a xarray
val init : ?bufsize:int -> int -> 'a -> (int -> 'a) -> 'a xarray
val make : ?bufsize:int -> int -> 'a -> 'a xarray
val length : 'a xarray -> int
val get : 'a xarray -> int -> 'a
val set : 'a xarray -> int -> 'a -> unit
val clear : 'a xarray -> unit
val reset : 'a xarray -> unit
val add_element : 'a xarray -> 'a -> unit
val add_array : 'a xarray -> 'a array -> unit
val iter : ('a -> unit) -> 'a xarray -> unit
val array_of : 'a xarray -> 'a array
val shrink : 'a xarray -> int -> unit