sig
  type 'execution_context t
  val invariant : 'Core.Std.Invariant.inv -> 'a t Core.Std.Invariant.inv
  val create :
    'execution_context -> ('-> unit) -> '-> 'execution_context Job.t
  val do_nothing : 'execution_context -> 'execution_context Job.t
  val execution_context : 'execution_context Job.t -> 'execution_context
  val run : 'Job.t -> unit
  val sexp_of_t :
    ('execution_context -> Sexplib.Sexp.t) ->
    'execution_context Job.t -> Sexplib.Sexp.t
end