module Fut:sig..end
      The futures are registration points for callbacks, storing a CCPool.Make.Fut.state,
      that are executed in the pool using CCPool.Make.run.
type 'a t 
type'afuture ='a t
val return : 'a -> 'a tval fail : exn -> 'a tval make : (unit -> 'a) -> 'a tval make1 : ('a -> 'b) -> 'a -> 'b t
val make2 : ('a -> 'b -> 'c) -> 'a -> 'b -> 'c tval get : 'a t -> 'aval state : 'a t -> 'a CCPool.stateval is_done : 'a t -> boolval on_success : 'a t -> ('a -> unit) -> unitval on_failure : 'a t -> (exn -> unit) -> unitval on_finish : 'a t -> ('a CCPool.state -> unit) -> unitval flat_map : ('a -> 'b t) -> 'a t -> 'b tval and_then : 'a t ->
       (unit -> 'b t) -> 'b tval sequence_a : 'a t array -> 'a array tsequence_a l fails too.val map_a : ('a -> 'b t) -> 'a array -> 'b array tmap_l f a maps f on every element of a, and will return
        the array of every result if all calls succeed, or an error otherwise.val sequence_l : 'a t list -> 'a list tsequence_l l fails too.val map_l : ('a -> 'b t) -> 'a list -> 'b list tmap_l f l maps f on every element of l, and will return
        the list of every result if all calls succeed, or an error otherwise.val choose_a : 'a t array -> 'a tval choose_l : 'a t list -> 'a tval map : ('a -> 'b) -> 'a t -> 'b tCCPool.Make.Fut.flat_map or CCPool.Make.Fut.map_asyncval map_async : ('a -> 'b) -> 'a t -> 'b tval app : ('a -> 'b) t -> 'a t -> 'b tapp f x applies the result of f to the result of xval app_async : ('a -> 'b) t -> 'a t -> 'b tapp f x applies the result of f to the result of x, in
        a separated job scheduled in the poolval sleep : float -> unit tCCTimer.module Infix:sig..end
val (>>=) : 'a t -> ('a -> 'b t) -> 'b t
val (>>) : 'a t ->
       (unit -> 'b t) -> 'b t
val (>|=) : 'a t -> ('a -> 'b) -> 'b tCCPool.Make.Fut.mapval (<*>) : ('a -> 'b) t -> 'a t -> 'b tCCPool.Make.Fut.app