Make.Labels
Operations on BatVect
with labels.
This module overrides a number of functions of BatVect
by functions in which some arguments require labels. These labels are there to improve readability and safety and to let you change the order of arguments to functions. In every case, the behavior of the function is identical to that of the corresponding function of BatVect
.
val init : int -> f:(int -> 'a) -> 'a t
val get : 'a t -> n:int -> 'a
val at : 'a t -> n:int -> 'a
val destructive_set : 'a t -> n:int -> elem:'a -> unit
val iter : f:('a -> unit) -> 'a t -> unit
val iteri : f:(int -> 'a -> unit) -> 'a t -> unit
val rangeiter : f:('a -> unit) -> m:int -> n:int -> 'a t -> unit
val fold_left : f:('b -> 'a -> 'b) -> init:'b -> 'a t -> 'b
val fold : f:('b -> 'a -> 'b) -> init:'b -> 'a t -> 'b
val reduce : f:('a -> 'a -> 'a) -> 'a t -> 'a
val fold_right : f:('a -> 'b -> 'b) -> 'a t -> init:'b -> 'b
val foldi : f:(int -> 'b -> 'a -> 'b) -> init:'b -> 'a t -> 'b
val for_all : f:('a -> bool) -> 'a t -> bool
val exists : f:('a -> bool) -> 'a t -> bool
val find : f:('a -> bool) -> 'a t -> 'a
val mem : elem:'a -> 'a t -> bool
val memq : elem:'a -> 'a t -> bool
val findi : f:('a -> bool) -> 'a t -> int