Add DateTime::to_timezone
and FromOffset
trait
#1569
+56
−5
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
We can't have a generic
From
orInto
implementation that converts from oneOffset
type into another because the standard library has a blanket implementation ofFrom<T> for T
. For the same reason we can't have a genericFrom
orInto
implementation that converts from oneDateTime<Tz>
into another.So we can and do have implementations to convert between
DateTime<Utc>
,DateTime<FixedOffset>
andDateTime<Local>
. But anyTimeZone
type outside chrono doesn't have this convenience, such as the one in chrono-tz.I propose to add a
FromOffset
trait thatOffset
types can implement to convert from any genericOffset
. And to add aDateTime::to_timezone
method to conveniently convert aDateTime<Tz>
into another type.If we implement
FromOffset
in chrono-tz it we can do nice things such as converting fromFixedOffset
to aTz
time zone for a fixed offset, or eventually fromLocalOffset
(#1563) to aTz
with the same time zone if possible.