type !'a t = 'a list = | []| :: of 'a * 'a list
val length : 'a list -> intval compare_lengths : 'a list -> 'b list -> intval compare_length_with : 'a list -> len:int -> intval is_empty : 'a list -> boolval cons : 'a -> 'a list -> 'a listval singleton : 'a -> 'a listval nth : 'a list -> int -> 'aval nth_opt : 'a list -> int -> 'a optionval rev : 'a list -> 'a listval init : len:int -> f:(int -> 'a) -> 'a listval append : 'a list -> 'a list -> 'a listval rev_append : 'a list -> 'a list -> 'a listval concat : 'a list list -> 'a listval flatten : 'a list list -> 'a listval equal : eq:('a -> 'a -> bool) -> 'a list -> 'a list -> boolval compare : cmp:('a -> 'a -> int) -> 'a list -> 'a list -> intval iter : f:('a -> unit) -> 'a list -> unitval iteri : f:(int -> 'a -> unit) -> 'a list -> unitval map : f:('a -> 'b) -> 'a list -> 'b listval mapi : f:(int -> 'a -> 'b) -> 'a list -> 'b listval rev_map : f:('a -> 'b) -> 'a list -> 'b listval filter_map : f:('a -> 'b option) -> 'a list -> 'b listval filter_mapi : f:(int -> 'a -> 'b option) -> 'a list -> 'b listval concat_map : f:('a -> 'b list) -> 'a list -> 'b listval fold_left_map :
f:('acc -> 'a -> 'acc * 'b) ->
init:'acc ->
'a list ->
'acc * 'b listval fold_left : f:('acc -> 'a -> 'acc) -> init:'acc -> 'a list -> 'accval fold_right : f:('a -> 'acc -> 'acc) -> 'a list -> init:'acc -> 'accval iter2 : f:('a -> 'b -> unit) -> 'a list -> 'b list -> unitval map2 : f:('a -> 'b -> 'c) -> 'a list -> 'b list -> 'c listval rev_map2 : f:('a -> 'b -> 'c) -> 'a list -> 'b list -> 'c listval fold_left2 :
f:('acc -> 'a -> 'b -> 'acc) ->
init:'acc ->
'a list ->
'b list ->
'accval fold_right2 :
f:('a -> 'b -> 'acc -> 'acc) ->
'a list ->
'b list ->
init:'acc ->
'accval for_all : f:('a -> bool) -> 'a list -> boolval exists : f:('a -> bool) -> 'a list -> boolval for_all2 : f:('a -> 'b -> bool) -> 'a list -> 'b list -> boolval exists2 : f:('a -> 'b -> bool) -> 'a list -> 'b list -> boolval mem : 'a -> set:'a list -> boolval memq : 'a -> set:'a list -> boolval find : f:('a -> bool) -> 'a list -> 'aval find_opt : f:('a -> bool) -> 'a list -> 'a optionval find_index : f:('a -> bool) -> 'a list -> int optionval find_map : f:('a -> 'b option) -> 'a list -> 'b optionval find_mapi : f:(int -> 'a -> 'b option) -> 'a list -> 'b optionval filter : f:('a -> bool) -> 'a list -> 'a listval find_all : f:('a -> bool) -> 'a list -> 'a listval filteri : f:(int -> 'a -> bool) -> 'a list -> 'a listval take : int -> 'a list -> 'a listval drop : int -> 'a list -> 'a listval take_while : f:('a -> bool) -> 'a list -> 'a listval drop_while : f:('a -> bool) -> 'a list -> 'a listval partition : f:('a -> bool) -> 'a list -> 'a list * 'a listval partition_map :
f:('a -> ('b, 'c) Stdlib.Either.t) ->
'a list ->
'b list * 'c listval assoc : 'a -> ('a * 'b) list -> 'bval assoc_opt : 'a -> ('a * 'b) list -> 'b optionval assq : 'a -> ('a * 'b) list -> 'bval assq_opt : 'a -> ('a * 'b) list -> 'b optionval mem_assoc : 'a -> map:('a * 'b) list -> boolval mem_assq : 'a -> map:('a * 'b) list -> boolval remove_assoc : 'a -> ('a * 'b) list -> ('a * 'b) listval remove_assq : 'a -> ('a * 'b) list -> ('a * 'b) listval split : ('a * 'b) list -> 'a list * 'b listval split_map : f:('c -> 'a * 'b) -> 'c list -> 'a list * 'b listval combine : 'a list -> 'b list -> ('a * 'b) listval sort : cmp:('a -> 'a -> int) -> 'a list -> 'a listval stable_sort : cmp:('a -> 'a -> int) -> 'a list -> 'a listval fast_sort : cmp:('a -> 'a -> int) -> 'a list -> 'a listval sort_uniq : cmp:('a -> 'a -> int) -> 'a list -> 'a listval merge : cmp:('a -> 'a -> int) -> 'a list -> 'a list -> 'a listval to_seq : 'a list -> 'a Stdlib.Seq.tval of_seq : 'a Stdlib.Seq.t -> 'a listval hd_exn : 'a list -> 'aval hd : 'a t -> 'a optionval tl_exn : 'a list -> 'a listval tl : 'a t -> 'a list optionval range : int -> int -> int listval min_elt : cmp:('a -> 'a -> int) -> 'a t -> 'a optionval max_elt : cmp:('a -> 'a -> int) -> 'a t -> 'a optionval split_n : 'a t -> int -> 'a t * 'a tval chunks_of : 'a t -> length:int -> 'a t tval map3 : f:('a -> 'b -> 'c -> 'd) -> 'a t -> 'b t -> 'c t -> 'd tval concat_mapi : f:(int -> 'a -> 'b t) -> 'a t -> 'b tval split3 : ('a * 'b * 'c) t -> 'a t * 'b t * 'c tval partition3_map :
f:('a -> [< `Fst of 'b | `Snd of 'c | `Trd of 'd ]) ->
'a t ->
'b list * 'c list * 'd listval find_a_dup : 'a list -> cmp:('a -> 'a -> int) -> 'a optionval find_all_dups : 'a list -> cmp:('a -> 'a -> int) -> 'a t