2 releases
new 0.1.0-alpha.1 | Nov 12, 2024 |
---|---|
0.1.0-alpha.0 | Jul 19, 2024 |
#3 in #lox
165 downloads per month
Used in 3 crates
735KB
16K
SLoC
lox-time
defines an API for working with instants in astronomical time scales.
Overview
lox_time
exposes:
- the marker trait [TimeScale] and zero-sized implementations representing the most common, continuous astronomical time scales;
- the concrete type [Time] representing an instant in a [TimeScale];
- [Utc], the only discontinuous time representation supported by Lox;
- the [TryToScale] and [ToScale] traits, supporting transformations between pairs of time scales;
- standard implementations of the most common time scale transformations.
Continuous vs discontinuous timescales
Internally, Lox uses only continuous time scales (i.e. time scales without leap seconds). An instance of [Time] represents an instant in time generic over a continuous [TimeScale].
[Utc] is used strictly as an I/O time format, which must be transformed into a continuous time scale before use in the wider Lox ecosystem.
This separation minimises the complexity in working with leap seconds, confining these transformations to the crate boundaries.
Dependencies
~11–19MB
~303K SLoC