template<class SourceClock>
struct clock_time_conversion<utc_clock, SourceClock> {
template<class Duration>
auto operator()(const time_point<SourceClock, Duration>& t) const
-> decltype(SourceClock::to_utc(t));
};
template<class Duration>
auto operator()(const time_point<SourceClock, Duration>& t) const
-> decltype(SourceClock::to_utc(t));
Constraints:
SourceClock::to_utc(t) is well-formed
. Mandates:
SourceClock::to_utc(t) returns a
utc_time<Duration2>
for some type
Duration2 (
[time.point.general])
. Returns:
SourceClock::to_utc(t). template<class DestClock>
struct clock_time_conversion<DestClock, utc_clock> {
template<class Duration>
auto operator()(const utc_time<Duration>& t) const
-> decltype(DestClock::from_utc(t));
};
template<class Duration>
auto operator()(const utc_time<Duration>& t) const
-> decltype(DestClock::from_utc(t));
Constraints:
DestClock::from_utc(t) is well-formed
. Mandates:
DestClock::from_utc(t) returns a
time_point<DestClock, Duration2>
for some type
Duration2 (
[time.point.general])
. Returns:
DestClock::from_utc(t).