|
template<class ToDuration , class Rep , class Period > |
constexpr ToDuration | duration_cast (const duration< Rep, Period > &fd) |
|
template<class Rep1 , class Period1 , class Rep2 , class Period2 > |
constexpr common_type_t< duration< Rep1, Period1 >, duration< Rep2, Period2 > > | operator+ (const duration< Rep1, Period1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Rep1 , class Period1 , class Rep2 , class Period2 > |
constexpr common_type_t< duration< Rep1, Period1 >, duration< Rep2, Period2 > > | operator- (const duration< Rep1, Period1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Rep1 , class Period , class Rep2 > |
constexpr duration< common_type_t< Rep1, Rep2 >, Period > | operator* (const duration< Rep1, Period > &d, const Rep2 &s) |
|
template<class Rep1 , class Period , class Rep2 > |
constexpr duration< common_type_t< Rep1, Rep2 >, Period > | operator* (const Rep1 &s, const duration< Rep2, Period > &d) |
|
template<class Rep1 , class Period , class Rep2 > |
constexpr Internal::duration_divide_result< duration< Rep1, Period >, Rep2 >::type | operator/ (const duration< Rep1, Period > &d, const Rep2 &s) |
|
template<class Rep1 , class Period1 , class Rep2 , class Period2 > |
constexpr common_type_t< Rep1, Rep2 > | operator/ (const duration< Rep1, Period1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Rep1 , class Period , class Rep2 > |
constexpr Internal::duration_divide_result< duration< Rep1, Period >, Rep2 >::type | operator% (const duration< Rep1, Period > &d, const Rep2 &s) |
|
template<class Rep1 , class Period1 , class Rep2 , class Period2 > |
constexpr auto | operator% (const duration< Rep1, Period1 > &lhs, const duration< Rep2, Period2 > &rhs) -> common_type_t< duration< Rep1, Period1 >, duration< Rep2, Period2 >> |
|
template<class Rep1 , class Period1 , class Rep2 , class Period2 > |
constexpr bool | operator== (const duration< Rep1, Period1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Rep1 , class Period1 , class Rep2 , class Period2 > |
constexpr bool | operator!= (const duration< Rep1, Period1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Rep1 , class Period1 , class Rep2 , class Period2 > |
constexpr bool | operator< (const duration< Rep1, Period1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Rep1 , class Period1 , class Rep2 , class Period2 > |
constexpr bool | operator> (const duration< Rep1, Period1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Rep1 , class Period1 , class Rep2 , class Period2 > |
constexpr bool | operator<= (const duration< Rep1, Period1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Rep1 , class Period1 , class Rep2 , class Period2 > |
constexpr bool | operator>= (const duration< Rep1, Period1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Clock , class Duration1 , class Rep2 , class Period2 > |
constexpr time_point< Clock, common_type_t< Duration1, duration< Rep2, Period2 > > > | operator+ (const time_point< Clock, Duration1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Rep1 , class Period1 , class Clock , class Duration2 > |
constexpr time_point< Clock, common_type_t< duration< Rep1, Period1 >, Duration2 > > | operator+ (const duration< Rep1, Period1 > &lhs, const time_point< Clock, Duration2 > &rhs) |
|
template<class Clock , class Duration1 , class Rep2 , class Period2 > |
constexpr time_point< Clock, common_type_t< Duration1, duration< Rep2, Period2 > > > | operator- (const time_point< Clock, Duration1 > &lhs, const duration< Rep2, Period2 > &rhs) |
|
template<class Clock , class Duration1 , class Duration2 > |
constexpr common_type_t< Duration1, Duration2 > | operator- (const time_point< Clock, Duration1 > &lhs, const time_point< Clock, Duration2 > &rhs) |
|
template<class Clock , class Duration1 , class Duration2 > |
constexpr bool | operator== (const time_point< Clock, Duration1 > &lhs, const time_point< Clock, Duration2 > &rhs) |
|
template<class Clock , class Duration1 , class Duration2 > |
constexpr bool | operator!= (const time_point< Clock, Duration1 > &lhs, const time_point< Clock, Duration2 > &rhs) |
|
template<class Clock , class Duration1 , class Duration2 > |
constexpr bool | operator< (const time_point< Clock, Duration1 > &lhs, const time_point< Clock, Duration2 > &rhs) |
|
template<class Clock , class Duration1 , class Duration2 > |
constexpr bool | operator> (const time_point< Clock, Duration1 > &lhs, const time_point< Clock, Duration2 > &rhs) |
|
template<class Clock , class Duration1 , class Duration2 > |
constexpr bool | operator<= (const time_point< Clock, Duration1 > &lhs, const time_point< Clock, Duration2 > &rhs) |
|
template<class Clock , class Duration1 , class Duration2 > |
constexpr bool | operator>= (const time_point< Clock, Duration1 > &lhs, const time_point< Clock, Duration2 > &rhs) |
|
template<class ToDuration , class Clock , class Duration > |
constexpr time_point< Clock, ToDuration > | time_point_cast (const time_point< Clock, Duration > &t) |
|
IMPORTANT: This is not the full standard implementation, it is the same except for supported Rep types. At the moment you can use only types "AZStd::sys_time_t" and "float" as duration Rep parameter. Any other type will lead to either a compiler error or bad results. Everything else should be up to standard. The reason for that is the use of common_type which requires compiler support or rtti. We can't rely on any of those for the variety of compilers we use.