Module Future
module UUID : sig ... end
type 'a computation
type 'a value
=[
|
`Val of 'a
|
`Exn of Exninfo.iexn
]
type fix_exn
= Stateid.exn_info option
val create : fix_exn:fix_exn -> (unit -> 'a) -> 'a computation
val from_val : 'a -> 'a computation
type 'a assignment
=[
|
`Val of 'a
|
`Exn of Exninfo.iexn
|
`Comp of unit -> 'a
]
val create_delegate : ?blocking:bool -> name:string -> fix_exn -> 'a computation * ('a assignment -> unit)
val replace : 'a computation -> 'a computation -> unit
val is_over : 'a computation -> bool
val is_exn : 'a computation -> bool
val peek_val : 'a computation -> 'a option
val uuid : 'a computation -> UUID.t
val chain : 'a computation -> ('a -> 'b) -> 'b computation
val force : 'a computation -> 'a
val compute : 'a computation -> 'a value
val print : ('a -> Pp.t) -> 'a computation -> Pp.t
Debug: print a computation given an inner printing function.