package affect
Install
dune-project
Dependency
Authors
Maintainers
Sources
sha512=b328f6696e60c489da8cc2e8fad0537ca6634a39fc0c5de5840d4f98561f110617ef79ba8285ee8427dd99908c6b3d39114973598cddc5ded91abcce3b91b9a6
doc/affect.unix/Affect_unix/Mtime/Span/index.html
Module Mtime.SpanSource
Time spans.
Time spans
The type for non-negative monotonic time spans.
They represent the difference between two monotonic clock readings with nanosecond precision (1e-9s) and can measure up to approximatevely 584 Julian year spans before silently rolling over (unlikely since this is in a single program run).
Predicates and comparisons
is_shorter span ~than is true if and only if span lasts stricly less than than.
is_longer span ~than is true if and only if span lasts stricly more than than.
Durations
n * dur is n times duration dur. Does not check for overflow or that n is positive.
dur / n is duration dur divided by n. Does not check for that n is positive, rounds towards 0.
Conversions
to_uint64_ns span is span as an unsigned 64-bit integer nanosecond span.
of_uint64_ns u is the unsigned 64-bit integer nanosecond span u as a span.
of_float_ns f is the positive floating point nanosecond span f as a span. This is None if f is negative, non finite, or larger or equal than 253 (~104 days, the largest exact floating point integer).
to_float_ns span is span as a nanosecond floating point span. Note that if span is larger than 253 (~104 days, the largest exact floating point integer) the result is an approximation and will not round trip with of_float_ns.
to_float_s span is 1e9 * to_float_ns span.
Formatting
Note. The fmt library has Fmt.uint64_ns_span for actual prettyness.
pp formats with Fmt.uint64_ns_span.
pp_ns ppf s prints s as an unsigned 64-bit integer nanosecond span.