Module Timeout_lib.Core_time_ns

type 'a t
val create : unit -> Core_kernel__Time_ns.Span.t -> f:( Core_kernel__Time_ns.t -> 'a ) -> 'a t
val to_deferred : 'a t -> 'a Async_kernel.Deferred.t
val peek : 'a t -> 'a option
val cancel : unit -> 'a t -> 'a -> unit
val remaining_time : 'a t -> Core_kernel__Time_ns.Span.t
val await : timeout_duration:Core_kernel__Time_ns.Span.t -> unit -> 'a Async_kernel.Deferred.t -> [ `Ok of 'a | `Timeout ] Async_kernel.Deferred.t
val await_exn : timeout_duration:Core_kernel__Time_ns.Span.t -> unit -> 'a Async_kernel.Deferred.t -> 'a Async_kernel.Deferred.t