type 'a fut_state = | Fut_wait |
| Fut_done of 'a |
| Fut_exn of exn |
type 'a t
val make : unit -> 'a tval set_done : 'a t -> 'a -> unitval set_exn : _ t -> exn -> unitval interrupt : _ t -> unitval interrupted : _ t -> boolval wait : 'a t -> 'aval listen : 'a t -> (('a, exn) Stdlib.result -> unit) -> unitval state : 'a t -> 'a fut_state