The time zone, which calculates offsets from the local time to UTC.
There are four operations provided by the
- Converting the local
- Converting the UTC
DateTime<Tz>to the local
DateTime<Tz>objects from various offsets
1 is used for constructors. 2 is used for the
with_timezone method of date and time types.
3 is used for other methods, e.g.
format(), and provided by an associated type
Offset (which then passed to
TimeZone for actual implementations).
TimeZone has a total knowledge about given timescale,
Offset is used as a cache to avoid the repeated conversion
and provides implementations for 1 and 3.
TimeZone instance can be reconstructed from the corresponding
The time zone with fixed offset, from UTC-23:59:59 to UTC+23:59:59.
The local timescale. This is implemented via the standard
The UTC time zone. This is the most efficient time zone when you don't need the local time. It is also used as an offset (which is also a dummy type).
The conversion result from the local time to the timezone-aware datetime types.
The offset from the local time to UTC.
The time zone.