module T: sig .. end
type 'execution_context t = {
   | 
mutable state :'execution_context state; | 
}
type 'execution_context state = 
| | 
Uninitialized | 
| | 
Aborted | 
| | 
Happened | 
| | 
Waiting of 'execution_context waiting | 
type 'execution_context waiting = {
   | 
event :'execution_context t Core.Std.sexp_opaque Events.Event.t; | 
   | 
ready :([ `Aborted | `Happened ], 'execution_context) Raw_clock_event.Ivar.t; | 
}
val sexp_of_t : 'execution_context.
         ('execution_context -> Sexplib.Sexp.t) ->
         'execution_context t -> Sexplib.Sexp.t
val sexp_of_state : 'execution_context.
         ('execution_context -> Sexplib.Sexp.t) ->
         'execution_context state -> Sexplib.Sexp.t
val sexp_of_waiting : 'execution_context.
         ('execution_context -> Sexplib.Sexp.t) ->
         'execution_context waiting -> Sexplib.Sexp.t