sig
type +'a t
val return : 'a -> 'a Lwt.t
val fail : exn -> 'a Lwt.t
val bind : 'a Lwt.t -> ('a -> 'b Lwt.t) -> 'b Lwt.t
val ( >>= ) : 'a Lwt.t -> ('a -> 'b Lwt.t) -> 'b Lwt.t
val ( =<< ) : ('a -> 'b Lwt.t) -> 'a Lwt.t -> 'b Lwt.t
val map : ('a -> 'b) -> 'a Lwt.t -> 'b Lwt.t
val ( >|= ) : 'a Lwt.t -> ('a -> 'b) -> 'b Lwt.t
val ( =|< ) : ('a -> 'b) -> 'a Lwt.t -> 'b Lwt.t
val catch : (unit -> 'a Lwt.t) -> (exn -> 'a Lwt.t) -> 'a Lwt.t
val try_bind :
(unit -> 'a Lwt.t) -> ('a -> 'b Lwt.t) -> (exn -> 'b Lwt.t) -> 'b Lwt.t
val choose : 'a Lwt.t list -> 'a Lwt.t
val join : unit Lwt.t list -> unit Lwt.t
val ( <?> ) : 'a Lwt.t -> 'a Lwt.t -> 'a Lwt.t
val ( <&> ) : unit Lwt.t -> unit Lwt.t -> unit Lwt.t
val ignore_result : 'a Lwt.t -> unit
type 'a u
val wait : unit -> 'a Lwt.t * 'a Lwt.u
val wakeup : 'a Lwt.u -> 'a -> unit
val wakeup_exn : 'a Lwt.u -> exn -> unit
val finalize : (unit -> 'a Lwt.t) -> (unit -> unit Lwt.t) -> 'a Lwt.t
type 'a state = Return of 'a | Fail of exn | Sleep
val state : 'a Lwt.t -> 'a Lwt.state
exception Canceled
val task : unit -> 'a Lwt.t * 'a Lwt.u
val on_cancel : 'a Lwt.t -> (unit -> unit) -> unit
val cancel : 'a Lwt.t -> unit
val select : 'a Lwt.t list -> 'a Lwt.t
val poll : 'a Lwt.t -> 'a option
val apply : ('a -> 'b Lwt.t) -> 'a -> 'b Lwt.t
end