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