package core_kernel

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type

Provides generic signatures for container data structures.

These signatures include functions (iter, fold, exists, for_all, ...) that you would expect to find in any container. Used by including Container.S0 or Container.S1 in the signature for every container-like data structure (Array, List, String, ...) to ensure a consistent interface.

These signatures extend signatures exported by Base.Container_intf.

include Base.Container_intf.Container
module type S0 = Container.S0
module type S0_phantom = Container.S0_phantom
module type S1 = Container.S1
module type S1_phantom_invariant = Container.S1_phantom_invariant
module type S1_phantom = Container.S1_phantom
module type Generic = Container.Generic
module type Generic_phantom = Container.Generic_phantom
type (!'t, !'a, !'accum) fold = 't -> init:'accum -> f:('accum -> 'a -> 'accum) -> 'accum
type (!'t, !'a) iter = 't -> f:('a -> unit) -> unit
val iter : fold:('t, 'a, unit) fold -> ('t, 'a) iter
val count : fold:('t, 'a, int) fold -> 't -> f:('a -> bool) -> int
val min_elt : fold:('t, 'a, 'a option) fold -> 't -> cmp:('a -> 'a -> int) -> 'a option
val max_elt : fold:('t, 'a, 'a option) fold -> 't -> cmp:('a -> 'a -> int) -> 'a option
val length : fold:('t, 'a, int) fold -> 't -> int
val to_list : fold:('t, 'a, 'a list) fold -> 't -> 'a list
val to_array : fold:('t, 'a, 'a list) fold -> 't -> 'a array
val sum : fold:('t, 'a, 'sum) fold -> (module Base__.Commutative_group.S with type t = 'sum) -> 't -> f:('a -> 'sum) -> 'sum
val fold_result : fold:('t, 'a, 'b) fold -> init:'b -> f:('b -> 'a -> ('b, 'e) Base__.Result.t) -> 't -> ('b, 'e) Base__.Result.t
val fold_until : fold:('t, 'a, 'b) fold -> init:'b -> f:('b -> 'a -> ('b, 'stop) Base.Container_intf.Continue_or_stop.t) -> 't -> ('b, 'stop) Base.Container_intf.Finished_or_stopped_early.t
val is_empty : iter:('t, 'a) iter -> 't -> bool
val exists : iter:('t, 'a) iter -> 't -> f:('a -> bool) -> bool
val for_all : iter:('t, 'a) iter -> 't -> f:('a -> bool) -> bool
val find : iter:('t, 'a) iter -> 't -> f:('a -> bool) -> 'a option
val find_map : iter:('t, 'a) iter -> 't -> f:('a -> 'b option) -> 'b option
module Make (T : Base.Container_intf.Make_arg) : sig ... end
module Make0 (T : Base.Container_intf.Make0_arg) : sig ... end
module type S1_permissions = Container.S1_permissions
OCaml

Innovation. Community. Security.