containers

A modular, clean and powerful extension of the OCaml standard library
Legend:
Library
Module
Module type
Parameter
Class
Class type
Library containers
Module CCListLabels . Infix
val (>|=) : 'a t -> ( 'a -> 'b ) -> 'b t

Infix version of map with reversed arguments.

val (@) : 'a t -> 'a t -> 'a t

As append. Concatenate two lists.

val (<*>) : ( 'a -> 'b ) t -> 'a t -> 'b t

funs <*> l is product (fun f x -> f x) funs l.

val (<$>) : ( 'a -> 'b ) -> 'a t -> 'b t

As map.

val (>>=) : 'a t -> ( 'a -> 'b t ) -> 'b t

l >>= f is flat_map f l.

val (--) : int -> int -> int t

Infix alias for range. Bounds included.

val (--^) : int -> int -> int t

Infix alias for range'. Second bound excluded.

  • since 0.17

Let operators on OCaml >= 4.08.0, nothing otherwise

  • since 2.8
include CCShimsMkLet_.S with type 'a t_let := 'a list
val let+ : 'a list -> ( 'a -> 'b ) -> 'b list
val and+ : 'a list -> 'b list -> ('a * 'b) list
val let* : 'a list -> ( 'a -> 'b list ) -> 'b list
val and* : 'a list -> 'b list -> ('a * 'b) list