sig
val am_holding_async_lock : unit -> bool
val deferred : unit -> 'a Async_core.Deferred.t * ('a -> unit)
val run_in_async_with_optional_cycle :
?wakeup_scheduler:bool ->
(unit -> [ `Do_not_run_a_cycle | `Run_a_cycle ] * 'a) ->
('a, exn) Core.Std.Result.t
val run_in_async :
?wakeup_scheduler:bool -> (unit -> 'a) -> ('a, exn) Core.Std.Result.t
val run_in_async_exn : ?wakeup_scheduler:bool -> (unit -> 'a) -> 'a
val block_on_async :
(unit -> 'a Async_core.Deferred.t) -> ('a, exn) Core.Std.Result.t
val block_on_async_exn : (unit -> 'a Async_core.Deferred.t) -> 'a
val run_in_async_wait :
(unit -> 'a Async_core.Deferred.t) -> ('a, exn) Core.Std.Result.t
val run_in_async_wait_exn : (unit -> 'a Async_core.Deferred.t) -> 'a
end