val sexp_of_t : ('a -> Ppx_sexp_conv_lib.Sexp.t) -> 'a t -> Ppx_sexp_conv_lib.Sexp.t
val create : len:int -> _ tval length : _ t -> intval set : 'a t -> int -> 'a Core_kernel.Heap_block.t option -> unitval set_exn : 'a t -> int -> 'a option -> unitset_exnraises an exception if givenSome xwithxnot being a heap block. This is in addition to raising exceptions on bounds violation assetdoes.
val get : 'a t -> int -> 'a Core_kernel.Heap_block.t optionval is_some : _ t -> int -> boolval is_none : _ t -> int -> boolval iter : 'a t -> f:('a -> unit) -> unitval iteri : 'a t -> f:(int -> 'a -> unit) -> unitval blit : src:'a t -> src_pos:int -> dst:'a t -> dst_pos:int -> len:int -> unitWarning!
blitoften takes time linear in the size of the arrays, not in the size of the range being copied. This issue is being tracked in https://github.com/ocaml/ocaml/issues/9258.Other than that,
blitis generally preferred overgetfollowed bysetbecause, unlikeget, it doesn't have to make the value strongly-referenced. Making a value strongly-referenced, even temporarily, may result in delaying its garbage collection by a whole GC cycle.