Deprecates functions that use wall-clock time, so that code must be explicit about what time source is used.
Idiomatic usage is:
open! Require_explicit_time_source
or, in an import.ml:
include Require_explicit_time_source
include Async_unix__.Require_explicit_time_source_intf.Require_explicit_time_source
We shadow Time_ns
and Scheduler
from Async_kernel
because the local versions
have a different interface.
include module type of sig ... end with module Scheduler := Async_unix__.Require_explicit_time_source_intf.From_kernel.Scheduler with module Time_ns := Async_unix__.Require_explicit_time_source_intf.From_kernel.Time_ns
val after : Time_ns.Span.t ‑> unit Async_kernel.Deferred.t
val every : ?start:unit Async_kernel.Deferred.t ‑> ?stop:unit Async_kernel.Deferred.t ‑> ?continue_on_error:bool ‑> Time_ns.Span.t ‑> (unit ‑> unit) ‑> unit
val with_timeout : Time_ns.Span.t ‑> 'a Async_kernel.Deferred.t ‑> [ `Result of 'a | `Timeout ] Async_kernel.Deferred.t
module Scheduler : sig ... end
module Time : sig ... end
module Time_ns : sig ... end
module Clock : Async_kernel.Clock_ns.Clock_deprecated with module Time := Time