libstdc++
Collaboration diagram for Time:

Files

file  chrono
 

Classes

struct  std::common_type< chrono::duration< _Rep1, _Period1 >, chrono::duration< _Rep2, _Period2 > >
 
struct  std::common_type< chrono::time_point< _Clock, _Duration1 >, chrono::time_point< _Clock, _Duration2 > >
 
class  std::chrono::duration< _Rep, _Period >
 
class  std::chrono::time_point< _Clock, _Dur >
 
struct  std::chrono::treat_as_floating_point< _Rep >
 

Macros

#define __cpp_lib_chrono
 

Typedefs

using std::chrono::days = duration< int64_t, ratio< 86400 > >
 
using std::chrono::file_clock = ::std::filesystem::__file_clock
 
template<typename _Duration >
using std::chrono::file_time = time_point< file_clock, _Duration >
 
using std::chrono::gps_seconds = gps_time< seconds >
 
template<typename _Duration >
using std::chrono::gps_time = time_point< gps_clock, _Duration >
 
using std::chrono::high_resolution_clock = system_clock
 
using std::chrono::hours = duration< int64_t, ratio< 3600 > >
 
using std::chrono::local_days = local_time< days >
 
using std::chrono::local_seconds = local_time< seconds >
 
template<typename _Duration >
using std::chrono::local_time = time_point< local_t, _Duration >
 
using std::chrono::microseconds = duration< int64_t, micro >
 
using std::chrono::milliseconds = duration< int64_t, milli >
 
using std::chrono::minutes = duration< int64_t, ratio< 60 > >
 
using std::chrono::months = duration< int64_t, ratio< 2629746 > >
 
using std::chrono::nanoseconds = duration< int64_t, nano >
 
using std::chrono::seconds = duration< int64_t >
 
using std::chrono::sys_days = sys_time< days >
 
using std::chrono::sys_seconds = sys_time< seconds >
 
template<typename _Duration >
using std::chrono::sys_time = time_point< system_clock, _Duration >
 
using std::chrono::tai_seconds = tai_time< seconds >
 
template<typename _Duration >
using std::chrono::tai_time = time_point< tai_clock, _Duration >
 
using std::chrono::utc_seconds = utc_time< seconds >
 
template<typename _Duration >
using std::chrono::utc_time = time_point< utc_clock, _Duration >
 
using std::chrono::weeks = duration< int64_t, ratio< 604800 > >
 
using std::chrono::years = duration< int64_t, ratio< 31556952 > >
 

Functions

constexpr std::chrono::year_month_day::year_month_day (const year_month_day_last &__ymdl) noexcept
 
template<typename _Rep , typename _Period >
constexpr enable_if_t< numeric_limits< _Rep >::is_signed, duration< _Rep, _Period > > std::chrono::abs (duration< _Rep, _Period > __d)
 
template<typename _ToDur , typename _Rep , typename _Period >
constexpr __enable_if_is_duration< _ToDur > std::chrono::ceil (const duration< _Rep, _Period > &__d)
 
template<typename _ToDur , typename _Clock , typename _Dur >
constexpr enable_if_t< __is_duration< _ToDur >::value, time_point< _Clock, _ToDur > > std::chrono::ceil (const time_point< _Clock, _Dur > &__tp)
 
template<typename _ToDur , typename _Rep , typename _Period >
constexpr __enable_if_is_duration< _ToDur > std::chrono::duration_cast (const duration< _Rep, _Period > &__d)
 
template<typename _ToDur , typename _Rep , typename _Period >
constexpr __enable_if_is_duration< _ToDur > std::chrono::floor (const duration< _Rep, _Period > &__d)
 
template<typename _ToDur , typename _Clock , typename _Dur >
constexpr enable_if_t< __is_duration< _ToDur >::value, time_point< _Clock, _ToDur > > std::chrono::floor (const time_point< _Clock, _Dur > &__tp)
 
constexpr bool std::chrono::is_am (const hours &__h) noexcept
 
constexpr bool std::chrono::is_pm (const hours &__h) noexcept
 
constexpr hours std::chrono::make12 (const hours &__h) noexcept
 
constexpr hours std::chrono::make24 (const hours &__h, bool __is_pm) noexcept
 
constexpr bool std::chrono::year_month_day::ok () const noexcept
 
constexpr chrono::day std::literals::chrono_literals::operator""d (unsigned long long __d) noexcept
 
template<char... _Digits>
constexpr chrono::hours std::literals::chrono_literals::operator""h ()
 
constexpr chrono::duration< long double, ratio< 3600, 1 > > std::literals::chrono_literals::operator""h (long double __hours)
 
template<char... _Digits>
constexpr chrono::minutes std::literals::chrono_literals::operator""min ()
 
constexpr chrono::duration< long double, ratio< 60, 1 > > std::literals::chrono_literals::operator""min (long double __mins)
 
template<char... _Digits>
constexpr chrono::milliseconds std::literals::chrono_literals::operator""ms ()
 
constexpr chrono::duration< long double, millistd::literals::chrono_literals::operator""ms (long double __msecs)
 
template<char... _Digits>
constexpr chrono::nanoseconds std::literals::chrono_literals::operator""ns ()
 
constexpr chrono::duration< long double, nanostd::literals::chrono_literals::operator""ns (long double __nsecs)
 
template<char... _Digits>
constexpr chrono::seconds std::literals::chrono_literals::operator""s ()
 
constexpr chrono::duration< long double > std::literals::chrono_literals::operator""s (long double __secs)
 
template<char... _Digits>
constexpr chrono::microseconds std::literals::chrono_literals::operator""us ()
 
constexpr chrono::duration< long double, microstd::literals::chrono_literals::operator""us (long double __usecs)
 
constexpr chrono::year std::literals::chrono_literals::operator""y (unsigned long long __y) noexcept
 
template<typename _CharT , typename _Traits , typename _Rep , typename _Period >
basic_ostream< _CharT, _Traits > & std::chrono::operator<< (std::basic_ostream< _CharT, _Traits > &__os, const duration< _Rep, _Period > &__d)
 
constexpr weekday_last std::chrono::weekday::operator[] (last_spec) const noexcept
 
constexpr weekday_indexed std::chrono::weekday::operator[] (unsigned __index) const noexcept
 
template<typename _ToDur , typename _Rep , typename _Period >
constexpr enable_if_t< __and_< __is_duration< _ToDur >, __not_< treat_as_floating_point< typename _ToDur::rep > > >::value, _ToDur > std::chrono::round (const duration< _Rep, _Period > &__d)
 
template<typename _ToDur , typename _Clock , typename _Dur >
constexpr enable_if_t< __and_< __is_duration< _ToDur >, __not_< treat_as_floating_point< typename _ToDur::rep > > >::value, time_point< _Clock, _ToDur > > std::chrono::round (const time_point< _Clock, _Dur > &__tp)
 
template<typename _ToDur , typename _Clock , typename _Dur >
constexpr __enable_if_t< __is_duration< _ToDur >::value, time_point< _Clock, _ToDur > > std::chrono::time_point_cast (const time_point< _Clock, _Dur > &__t)
 

Variables

constexpr month std::chrono::April
 
constexpr month std::chrono::August
 
constexpr month std::chrono::December
 
constexpr month std::chrono::February
 
constexpr weekday std::chrono::Friday
 
template<typename _Tp >
constexpr bool std::chrono::is_clock_v
 
template<>
constexpr bool std::chrono::is_clock_v< file_clock >
 
template<>
constexpr bool std::chrono::is_clock_v< gps_clock >
 
template<>
constexpr bool std::chrono::is_clock_v< steady_clock >
 
template<>
constexpr bool std::chrono::is_clock_v< system_clock >
 
template<>
constexpr bool std::chrono::is_clock_v< tai_clock >
 
template<>
constexpr bool std::chrono::is_clock_v< utc_clock >
 
constexpr month std::chrono::January
 
constexpr month std::chrono::July
 
constexpr month std::chrono::June
 
constexpr last_spec std::chrono::last
 
constexpr month std::chrono::March
 
constexpr month std::chrono::May
 
constexpr weekday std::chrono::Monday
 
constexpr month std::chrono::November
 
constexpr month std::chrono::October
 
template<typename _Tp >
requires std::chrono::requires
 
constexpr weekday std::chrono::Saturday
 
constexpr month std::chrono::September
 
constexpr weekday std::chrono::Sunday
 
constexpr weekday std::chrono::Thursday
 
template<typename _Rep >
constexpr bool std::chrono::treat_as_floating_point_v
 
constexpr weekday std::chrono::Tuesday
 
constexpr weekday std::chrono::Wednesday
 
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type< duration< _Rep1, _Period1 >, duration< _Rep2, _Period2 > >::type std::chrono::operator- (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type< duration< _Rep1, _Period1 >, duration< _Rep2, _Period2 > >::type operator+ (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Rep1 , typename _Rep2 , typename _Period >
constexpr duration< __common_rep_t< _Rep2, _Rep1 >, _Period > std::chrono::operator* (const _Rep1 &__s, const duration< _Rep2, _Period > &__d)
 
template<typename _Rep1 , typename _Period , typename _Rep2 >
constexpr duration< __common_rep_t< _Rep1, __disable_if_is_duration< _Rep2 > >, _Period > std::chrono::operator/ (const duration< _Rep1, _Period > &__d, const _Rep2 &__s)
 
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type< _Rep1, _Rep2 >::type std::chrono::operator/ (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Rep1 , typename _Period , typename _Rep2 >
constexpr duration< __common_rep_t< _Rep1, __disable_if_is_duration< _Rep2 > >, _Period > std::chrono::operator% (const duration< _Rep1, _Period > &__d, const _Rep2 &__s)
 
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type< duration< _Rep1, _Period1 >, duration< _Rep2, _Period2 > >::type std::chrono::operator% (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Rep1 , typename _Period , typename _Rep2 >
constexpr duration< __common_rep_t< _Rep1, _Rep2 >, _Period > operator* (const duration< _Rep1, _Period > &__d, const _Rep2 &__s)
 
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool std::chrono::operator< (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool std::chrono::operator!= (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool std::chrono::operator<= (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool std::chrono::operator> (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool std::chrono::operator>= (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool operator== (const duration< _Rep1, _Period1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Rep1 , typename _Period1 , typename _Clock , typename _Dur2 >
constexpr time_point< _Clock, typename common_type< duration< _Rep1, _Period1 >, _Dur2 >::type > std::chrono::operator+ (const duration< _Rep1, _Period1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
 
template<typename _Clock , typename _Dur1 , typename _Rep2 , typename _Period2 >
constexpr time_point< _Clock, typename common_type< _Dur1, duration< _Rep2, _Period2 > >::type > std::chrono::operator- (const time_point< _Clock, _Dur1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr common_type< _Dur1, _Dur2 >::type std::chrono::operator- (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
 
template<typename _Clock , typename _Dur1 , typename _Rep2 , typename _Period2 >
constexpr time_point< _Clock, typename common_type< _Dur1, duration< _Rep2, _Period2 > >::type > operator+ (const time_point< _Clock, _Dur1 > &__lhs, const duration< _Rep2, _Period2 > &__rhs)
 
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool std::chrono::operator!= (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
 
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool std::chrono::operator< (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
 
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool std::chrono::operator<= (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
 
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool std::chrono::operator> (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
 
template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr bool std::chrono::operator>= (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
 

Detailed Description

Classes and functions for time.

Since
C++11

Typedef Documentation

◆ days

using std::chrono::days = typedef duration<int64_t, ratio<86400> >

days

Definition at line 898 of file chrono.h.

◆ high_resolution_clock

Highest-resolution clock.

This is the clock "with the shortest tick period." Alias to std::system_clock until higher-than-nanosecond definitions become feasible.

Definition at line 1279 of file chrono.h.

◆ hours

using std::chrono::hours = typedef duration<int64_t, ratio<3600> >

hours

Definition at line 894 of file chrono.h.

◆ microseconds

using std::chrono::microseconds = typedef duration<int64_t, micro>

microseconds

Definition at line 882 of file chrono.h.

◆ milliseconds

using std::chrono::milliseconds = typedef duration<int64_t, milli>

milliseconds

Definition at line 885 of file chrono.h.

◆ minutes

using std::chrono::minutes = typedef duration<int64_t, ratio< 60> >

minutes

Definition at line 891 of file chrono.h.

◆ months

using std::chrono::months = typedef duration<int64_t, ratio<2629746> >

months

Definition at line 907 of file chrono.h.

◆ nanoseconds

using std::chrono::nanoseconds = typedef duration<int64_t, nano>

nanoseconds

Definition at line 879 of file chrono.h.

◆ seconds

using std::chrono::seconds = typedef duration<int64_t>

seconds

Definition at line 888 of file chrono.h.

◆ weeks

using std::chrono::weeks = typedef duration<int64_t, ratio<604800> >

weeks

Definition at line 901 of file chrono.h.

◆ years

using std::chrono::years = typedef duration<int64_t, ratio<31556952> >

years

Definition at line 904 of file chrono.h.

Function Documentation

◆ abs()

template<typename _Rep , typename _Period >
constexpr enable_if_t<numeric_limits<_Rep>::is_signed, duration<_Rep, _Period> > std::chrono::abs ( duration< _Rep, _Period >  __d)
constexpr

The absolute (non-negative) value of a duration.

Parameters
__dA duration with a signed rep type.
Returns
A duration of the same type as the argument, with value |d|.
Since
C++17

Definition at line 435 of file chrono.h.

◆ ceil() [1/2]

template<typename _ToDur , typename _Rep , typename _Period >
constexpr __enable_if_is_duration<_ToDur> std::chrono::ceil ( const duration< _Rep, _Period > &  __d)
constexpr

Convert a duration to type ToDur and round up.

If the duration cannot be represented exactly in the result type, returns the closest value that is greater than the argument.

Template Parameters
_ToDurThe result type must be a duration.
Parameters
__dA duration.
Returns
The value of __d converted to type _ToDur.
Since
C++17

Definition at line 384 of file chrono.h.

◆ ceil() [2/2]

template<typename _ToDur , typename _Clock , typename _Dur >
constexpr enable_if_t<__is_duration<_ToDur>::value, time_point<_Clock, _ToDur> > std::chrono::ceil ( const time_point< _Clock, _Dur > &  __tp)
constexpr

Convert a time_point to type ToDur and round up.

The result is the same time point as measured by the same clock, but using the specified duration to represent the time. If the time point cannot be represented exactly in the result type, returns the closest value that is greater than the argument.

Template Parameters
_ToDurThe duration type to use for the result.
Parameters
__tA time point.
Returns
The value of __d converted to type _ToDur.
Since
C++17

Definition at line 1053 of file chrono.h.

◆ duration_cast()

template<typename _ToDur , typename _Rep , typename _Period >
constexpr __enable_if_is_duration<_ToDur> std::chrono::duration_cast ( const duration< _Rep, _Period > &  __d)
constexpr

Convert a duration to type ToDur.

If the duration cannot be represented accurately in the result type, returns the result of integer truncation (i.e., rounded towards zero).

Template Parameters
_ToDurThe result type must be a duration.
Parameters
__dA duration.
Returns
The value of __d converted to type _ToDur.
Since
C++11

Definition at line 262 of file chrono.h.

◆ floor() [1/2]

template<typename _ToDur , typename _Rep , typename _Period >
constexpr __enable_if_is_duration<_ToDur> std::chrono::floor ( const duration< _Rep, _Period > &  __d)
constexpr

Convert a duration to type ToDur and round down.

If the duration cannot be represented exactly in the result type, returns the closest value that is less than the argument.

Template Parameters
_ToDurThe result type must be a duration.
Parameters
__dA duration.
Returns
The value of __d converted to type _ToDur.
Since
C++17

Definition at line 364 of file chrono.h.

◆ floor() [2/2]

template<typename _ToDur , typename _Clock , typename _Dur >
constexpr enable_if_t<__is_duration<_ToDur>::value, time_point<_Clock, _ToDur> > std::chrono::floor ( const time_point< _Clock, _Dur > &  __tp)
constexpr

Convert a time_point to type ToDur and round down.

The result is the same time point as measured by the same clock, but using the specified duration to represent the time. If the time point cannot be represented exactly in the result type, returns the closest value that is less than the argument.

Template Parameters
_ToDurThe duration type to use for the result.
Parameters
__tA time point.
Returns
The value of __d converted to type _ToDur.
Since
C++17

Definition at line 1032 of file chrono.h.

◆ operator!=()

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool std::chrono::operator!= ( const duration< _Rep1, _Period1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
constexpr

Comparisons for chrono::duration

Definition at line 838 of file chrono.h.

◆ operator""d()

constexpr chrono::day std::literals::chrono_literals::operator""d ( unsigned long long  __d)
constexprnoexcept

Literal suffix for creating chrono::day objects.

Since
C++20

Definition at line 2086 of file chrono.

◆ operator""h() [1/2]

template<char... _Digits>
constexpr chrono::hours std::literals::chrono_literals::operator""h ( )
constexpr

Literal suffix for durations of type std::chrono::hours

Definition at line 1363 of file chrono.h.

◆ operator""h() [2/2]

constexpr chrono::duration<long double, ratio<3600,1> > std::literals::chrono_literals::operator""h ( long double  __hours)
constexpr

Literal suffix for durations representing non-integer hours.

Definition at line 1357 of file chrono.h.

◆ operator""min() [1/2]

template<char... _Digits>
constexpr chrono::minutes std::literals::chrono_literals::operator""min ( )
constexpr

Literal suffix for durations of type std::chrono::minutes

Definition at line 1374 of file chrono.h.

◆ operator""min() [2/2]

constexpr chrono::duration<long double, ratio<60,1> > std::literals::chrono_literals::operator""min ( long double  __mins)
constexpr

Literal suffix for durations representing non-integer minutes.

Definition at line 1368 of file chrono.h.

◆ operator""ms() [1/2]

template<char... _Digits>
constexpr chrono::milliseconds std::literals::chrono_literals::operator""ms ( )
constexpr

Literal suffix for durations of type std::chrono::milliseconds

Definition at line 1396 of file chrono.h.

◆ operator""ms() [2/2]

constexpr chrono::duration<long double, milli> std::literals::chrono_literals::operator""ms ( long double  __msecs)
constexpr

Literal suffix for durations representing non-integer milliseconds.

Definition at line 1390 of file chrono.h.

◆ operator""ns() [1/2]

template<char... _Digits>
constexpr chrono::nanoseconds std::literals::chrono_literals::operator""ns ( )
constexpr

Literal suffix for durations of type std::chrono::nanoseconds

Definition at line 1418 of file chrono.h.

◆ operator""ns() [2/2]

constexpr chrono::duration<long double, nano> std::literals::chrono_literals::operator""ns ( long double  __nsecs)
constexpr

Literal suffix for durations representing non-integer nanoseconds.

Definition at line 1412 of file chrono.h.

◆ operator""s() [1/2]

template<char... _Digits>
constexpr chrono::seconds std::literals::chrono_literals::operator""s ( )
constexpr

Literal suffix for durations of type std::chrono::seconds

Definition at line 1385 of file chrono.h.

◆ operator""s() [2/2]

constexpr chrono::duration<long double> std::literals::chrono_literals::operator""s ( long double  __secs)
constexpr

Literal suffix for durations representing non-integer seconds.

Definition at line 1379 of file chrono.h.

◆ operator""us() [1/2]

template<char... _Digits>
constexpr chrono::microseconds std::literals::chrono_literals::operator""us ( )
constexpr

Literal suffix for durations of type std::chrono::microseconds

Definition at line 1407 of file chrono.h.

◆ operator""us() [2/2]

constexpr chrono::duration<long double, micro> std::literals::chrono_literals::operator""us ( long double  __usecs)
constexpr

Literal suffix for durations representing non-integer microseconds.

Definition at line 1401 of file chrono.h.

◆ operator""y()

constexpr chrono::year std::literals::chrono_literals::operator""y ( unsigned long long  __y)
constexprnoexcept

Literal suffix for creating chrono::year objects.

Since
C++20

Definition at line 2092 of file chrono.

◆ operator%() [1/2]

template<typename _Rep1 , typename _Period , typename _Rep2 >
constexpr duration<__common_rep_t<_Rep1, __disable_if_is_duration<_Rep2> >, _Period> std::chrono::operator% ( const duration< _Rep1, _Period > &  __d,
const _Rep2 &  __s 
)
constexpr

Arithmetic operators for chrono::duration

Definition at line 770 of file chrono.h.

◆ operator%() [2/2]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type<duration<_Rep1, _Period1>, duration<_Rep2, _Period2> >::type std::chrono::operator% ( const duration< _Rep1, _Period1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
constexpr

Arithmetic operators for chrono::duration

Definition at line 781 of file chrono.h.

◆ operator*() [1/2]

template<typename _Rep1 , typename _Rep2 , typename _Period >
constexpr duration<__common_rep_t<_Rep2, _Rep1>, _Period> std::chrono::operator* ( const _Rep1 &  __s,
const duration< _Rep2, _Period > &  __d 
)
constexpr

Arithmetic operators for chrono::duration

Definition at line 741 of file chrono.h.

◆ operator*() [2/2]

template<typename _Rep1 , typename _Period , typename _Rep2 >
constexpr duration< __common_rep_t< _Rep1, _Rep2 >, _Period > operator* ( const duration< _Rep1, _Period > &  __d,
const _Rep2 &  __s 
)
related

Arithmetic operators for chrono::duration

Definition at line 732 of file chrono.h.

◆ operator+() [1/3]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type< duration< _Rep1, _Period1 >, duration< _Rep2, _Period2 > >::type operator+ ( const duration< _Rep1, _Period1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
related

The sum of two durations.

Definition at line 687 of file chrono.h.

◆ operator+() [2/3]

template<typename _Rep1 , typename _Period1 , typename _Clock , typename _Dur2 >
constexpr time_point<_Clock, typename common_type<duration<_Rep1, _Period1>, _Dur2>::type> std::chrono::operator+ ( const duration< _Rep1, _Period1 > &  __lhs,
const time_point< _Clock, _Dur2 > &  __rhs 
)
constexpr

Adjust a time point forwards by the given duration.

Definition at line 1107 of file chrono.h.

◆ operator+() [3/3]

template<typename _Clock , typename _Dur1 , typename _Rep2 , typename _Period2 >
constexpr time_point< _Clock, typename common_type< _Dur1, duration< _Rep2, _Period2 > >::type > operator+ ( const time_point< _Clock, _Dur1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
related

Adjust a time point forwards by the given duration.

Definition at line 1093 of file chrono.h.

◆ operator-() [1/3]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type<duration<_Rep1, _Period1>, duration<_Rep2, _Period2> >::type std::chrono::operator- ( const duration< _Rep1, _Period1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
constexpr

The difference between two durations.

Definition at line 701 of file chrono.h.

◆ operator-() [2/3]

template<typename _Clock , typename _Dur1 , typename _Rep2 , typename _Period2 >
constexpr time_point<_Clock, typename common_type<_Dur1, duration<_Rep2, _Period2> >::type> std::chrono::operator- ( const time_point< _Clock, _Dur1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
constexpr

Adjust a time point backwards by the given duration.

Definition at line 1121 of file chrono.h.

◆ operator-() [3/3]

template<typename _Clock , typename _Dur1 , typename _Dur2 >
constexpr common_type<_Dur1, _Dur2>::type std::chrono::operator- ( const time_point< _Clock, _Dur1 > &  __lhs,
const time_point< _Clock, _Dur2 > &  __rhs 
)
constexpr

The difference between two time points (as a duration)

Definition at line 1133 of file chrono.h.

◆ operator/() [1/2]

template<typename _Rep1 , typename _Period , typename _Rep2 >
constexpr duration<__common_rep_t<_Rep1, __disable_if_is_duration<_Rep2> >, _Period> std::chrono::operator/ ( const duration< _Rep1, _Period > &  __d,
const _Rep2 &  __s 
)
constexpr

Arithmetic operators for chrono::duration

Definition at line 747 of file chrono.h.

◆ operator/() [2/2]

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr common_type<_Rep1, _Rep2>::type std::chrono::operator/ ( const duration< _Rep1, _Period1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
constexpr

Arithmetic operators for chrono::duration

Definition at line 757 of file chrono.h.

◆ operator<()

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool std::chrono::operator< ( const duration< _Rep1, _Period1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
constexpr

Comparisons for chrono::duration

Definition at line 812 of file chrono.h.

◆ operator<=()

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool std::chrono::operator<= ( const duration< _Rep1, _Period1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
constexpr

Comparisons for chrono::duration

Definition at line 845 of file chrono.h.

◆ operator==()

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool operator== ( const duration< _Rep1, _Period1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
related

Comparisons for chrono::duration

Definition at line 801 of file chrono.h.

◆ operator>()

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool std::chrono::operator> ( const duration< _Rep1, _Period1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
constexpr

Comparisons for chrono::duration

Definition at line 853 of file chrono.h.

◆ operator>=()

template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 >
constexpr bool std::chrono::operator>= ( const duration< _Rep1, _Period1 > &  __lhs,
const duration< _Rep2, _Period2 > &  __rhs 
)
constexpr

Comparisons for chrono::duration

Definition at line 860 of file chrono.h.

◆ round() [1/2]

template<typename _ToDur , typename _Rep , typename _Period >
constexpr enable_if_t< __and_<__is_duration<_ToDur>, __not_<treat_as_floating_point<typename _ToDur::rep> > >::value, _ToDur> std::chrono::round ( const duration< _Rep, _Period > &  __d)
constexpr

Convert a duration to type ToDur and round to the closest value.

If the duration cannot be represented exactly in the result type, returns the closest value, rounding ties to even.

Template Parameters
_ToDurThe result type must be a duration with a non-floating-point rep type.
Parameters
__dA duration.
Returns
The value of __d converted to type _ToDur.
Since
C++17

Definition at line 409 of file chrono.h.

◆ round() [2/2]

template<typename _ToDur , typename _Clock , typename _Dur >
constexpr enable_if_t< __and_<__is_duration<_ToDur>, __not_<treat_as_floating_point<typename _ToDur::rep> > >::value, time_point<_Clock, _ToDur> > std::chrono::round ( const time_point< _Clock, _Dur > &  __tp)
constexpr

Convert a time_point to type ToDur and round to the closest value.

The result is the same time point as measured by the same clock, but using the specified duration to represent the time. If the time point cannot be represented exactly in the result type, returns the closest value, rounding ties to even.

Template Parameters
_ToDurThe duration type to use for the result, which must have a non-floating-point rep type.
Parameters
__tA time point.
Returns
The value of __d converted to type _ToDur.
Since
C++17

Definition at line 1078 of file chrono.h.

◆ time_point_cast()

template<typename _ToDur , typename _Clock , typename _Dur >
constexpr __enable_if_t<__is_duration<_ToDur>::value, time_point<_Clock, _ToDur> > std::chrono::time_point_cast ( const time_point< _Clock, _Dur > &  __t)
constexpr

Convert a time_point to use duration type ToDur.

The result is the same time point as measured by the same clock, but using the specified duration to represent the time. If the time point cannot be represented accurately in the result type, returns the result of integer truncation (i.e., rounded towards zero).

Template Parameters
_ToDurThe duration type to use for the result.
Parameters
__tA time point.
Returns
The value of __t converted to use type _ToDur.
Since
C++11

Definition at line 1010 of file chrono.h.