Expand description
The time zone, which calculates offsets from the local time to UTC.
There are four operations provided by the TimeZone
trait:
- Converting the local
NaiveDateTime
toDateTime<Tz>
- Converting the UTC
NaiveDateTime
toDateTime<Tz>
- Converting
DateTime<Tz>
to the localNaiveDateTime
- Constructing
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. year()
or format()
, and provided by an associated type
which implements Offset
(which then passed to TimeZone
for actual implementations).
Technically speaking TimeZone
has a total knowledge about given timescale,
but Offset
is used as a cache to avoid the repeated conversion
and provides implementations for 1 and 3.
An TimeZone
instance can be reconstructed from the corresponding Offset
instance.
Structs
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 time
crate.
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).
Enums
The conversion result from the local time to the timezone-aware datetime types.