Expand description
§GNSS Time Scale Marker Types
This module defines compile-time marker types for GNSS and atomic time scales.
Each GNSS system operates on its own time scale with a fixed or contextual relationship to TAI (International Atomic Time).
§Design principles
- Each scale is a zero-sized type (ZST)
- No runtime state is stored
- All conversions are expressed through TAI as a pivot scale
- The trait
TimeScaleis sealed to prevent external implementations
§Sealed trait
TimeScale cannot be implemented outside this crate.
This ensures:
- correctness of offset invariants
- consistency of conversion rules
- prevention of user-defined incompatible scales
§Display formats
| Scale | Format |
|---|---|
| GPS | GPS 2345:432000.000 |
| GLONASS | GLO 10512:43200.000 |
| Galileo | GAL 1303:432000.000 |
| BeiDou | BDT 960:432000.000 |
| TAI | TAI +1000000000s 0ns |
| UTC | UTC +1000000000s 0ns |
Structs§
- Beidou
- BeiDou — Chinese navigation system (BDT)
- Galileo
- Galileo — European navigation system (GST)
- Glonass
- GLONASS — Russian time system (UTC(SU) + 3 hours)
- Gps
- GPS — American Global Positioning System
- Tai
- TAI — International Atomic Time
- Utc
- UTC — Coordinated Universal Time
Enums§
- Display
Style - Defines how a
crate::Time<S>value is formatted for display. - Offset
ToTai - Relationship between a time scale and TAI.
Traits§
- Time
Scale - Marker trait for GNSS and atomic time scales.