package orsetto
Install
Dune Dependency
Authors
Maintainers
Sources
sha512=9b654edb663ae697563f150824047052f3b1bf760398f24bce6350553f031f73c46b6337239a1acd871e61238597ea92046809e3358290ff14d6ba671b449085
doc/orsetto.cf/Cf_leap_second/index.html
Module Cf_leap_second
Handling the leap second archive
Overview
This module defines a data structure representing the history of leap seconds published in Bulletin C by the International Earth Rotation and Reference Systems Service (IERS). This data is used in converting between the Coordinated Universal Time (UTC) and Temps Atomique International (TAI) timescales. Bulletin C is published every six months and whenever necessary and a machine readable archive of the historical record is provided as a public service by the United States National Institute of Standards and Technology (NIST) and the Internet Engineering Task Force (IETF) at the following locations:
<https://www.ietf.org/timezones/data/leap-seconds.list> <ftp://ftp.nist.gov/pub/time/leap-seconds.list>
The data intrinsically inclued in the current implementation expires on December 28, 2021. Use the load_from_nist_file
function to use a more recent update of the leap second archive.
Types
An entry in the archive comprising the TAI epoch of an announced leap second and the new offset from UTC to TAI in seconds after the leap.
type archive = private
| Archive of {
current : int;
updated : Cf_tai64.t;
expires : Cf_tai64.t;
history : entry list;
}
A record of known leap seconds in reverse chronological order.
Values
val current : unit -> archive
Use current ()
to obtain the current leap second archive.
Use load_from_nist_file filename
to override the internal archive data with the content of filename
, a file copied from the data published by NIST and IETF. Raise an exception if the file cannot be read or a parsing error arises.
val search : Cf_tai64.t -> bool * int
Use search t
to search the leap second archive with t
to find out whether it appears in the archive as an announcement of a leap second. The integer returned is the offset from UTC to TAI in seconds immediately after t
.