package async_unix
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
Monadic concurrency library
Install
dune-project
Dependency
Authors
Maintainers
Sources
async_unix-v0.16.0.tar.gz
sha256=a6a86202acea433b5c739ac20190a9a364da9d9eb7ebd402f517b8c58983839b
doc/src/async_unix/clock.ml.html
Source file clock.ml
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105open! Core open! Import open Async_kernel.Clock_ns module Or_timeout = Or_timeout let run_at time f a = run_at (Time_ns.of_time_float_round_nearest time) f a let run_after span f a = run_after (Time_ns.Span.of_span_float_round_nearest span) f a let at time = at (Time_ns.of_time_float_round_nearest time) let after span = after (Time_ns.Span.of_span_float_round_nearest span) let with_timeout span d = with_timeout (Time_ns.Span.of_span_float_round_nearest span) d module Event = struct module Abort_result = Event.Abort_result module Fired = Event.Fired module Reschedule_result = Event.Reschedule_result type ('a, 'h) t = ('a, 'h) Event.t [@@deriving sexp_of] type t_unit = Event.t_unit [@@deriving sexp_of] let invariant = Event.invariant let abort = Event.abort let abort_exn = Event.abort_exn let abort_if_possible = Event.abort_if_possible let fired = Event.fired let scheduled_at t = Time_ns.to_time_float_round_nearest (Event.scheduled_at t) let at time = Event.at (Time_ns.of_time_float_round_nearest time) let after span = Event.after (Time_ns.Span.of_span_float_round_nearest span) let reschedule_at t time = Event.reschedule_at t (Time_ns.of_time_float_round_nearest time) ;; let reschedule_after t span = Event.reschedule_after t (Time_ns.Span.of_span_float_round_nearest span) ;; let run_at time f x = Event.run_at (Time_ns.of_time_float_round_nearest time) f x let run_after span f x = Event.run_after (Time_ns.Span.of_span_float_round_nearest span) f x ;; module Status = struct type ('a, 'h) t = | Aborted of 'a | Happened of 'h | Scheduled_at of Time.t [@@deriving sexp_of] end let status t : _ Status.t = match Event.status t with | Aborted a -> Aborted a | Happened h -> Happened h | Scheduled_at time -> Scheduled_at (Time_ns.to_time_float_round_nearest time) ;; end let at_varying_intervals ?stop f = at_varying_intervals ?stop (fun () -> Time_ns.Span.of_span_float_round_nearest (f ())) ;; let at_intervals ?start ?stop span = let start = Option.map start ~f:Time_ns.of_time_float_round_nearest in at_intervals ?start ?stop (Time_ns.Span.of_span_float_round_nearest span) ;; let every' ?start ?stop ?continue_on_error ?finished span f = every' ?start ?stop ?continue_on_error ?finished (Time_ns.Span.of_span_float_round_nearest span) f ;; let every ?start ?stop ?continue_on_error span f = every ?start ?stop ?continue_on_error (Time_ns.Span.of_span_float_round_nearest span) f ;; let run_at_intervals' ?start ?stop ?continue_on_error span f = let start = Option.map start ~f:Time_ns.of_time_float_round_nearest in run_at_intervals' ?start ?stop ?continue_on_error (Time_ns.Span.of_span_float_round_nearest span) f ;; let run_at_intervals ?start ?stop ?continue_on_error span f = let start = Option.map start ~f:Time_ns.of_time_float_round_nearest in run_at_intervals ?start ?stop ?continue_on_error (Time_ns.Span.of_span_float_round_nearest span) f ;; let duration_of f = let%map res, span = duration_of f in res, Time_ns.Span.to_span_float_round_nearest span ;;
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>