Scroll to navigation

std::chrono(3cxx) std::chrono(3cxx)

NAME

std::chrono - ISO C++ 2011 namespace for date and time utilities.

SYNOPSIS

Classes


class duration
chrono::duration represents a distance between two points in time struct duration_values
duration_values class gps_clock
class hh_mm_ss
struct steady_clock
Monotonic clock. struct system_clock
System clock. class tai_clock
class time_point
chrono::time_point represents a point in time as measured by a clock struct treat_as_floating_point
class tzdb_list
class utc_clock

Typedefs


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

Enumerations


enum class choose { earliest, latest }

Functions


template<typename _Duration > void __throw_bad_local_time (const local_time< _Duration > &__tp, const local_info &__i)
template<typename _Rep , typename _Period > constexpr enable_if_t< numeric_limits< _Rep >::is_signed, duration< _Rep, _Period > > abs (duration< _Rep, _Period > __d)
template<typename _ToDur , typename _Rep , typename _Period > constexpr __enable_if_is_duration< _ToDur > ceil (const duration< _Rep, _Period > &__d)
template<typename _ToDur , typename _Clock , typename _Dur > constexpr enable_if_t< __is_duration_v< _ToDur >, time_point< _Clock, _ToDur > > ceil (const time_point< _Clock, _Dur > &__tp)
template<typename _DestClock , typename _SourceClock , typename _Duration >
requires __detail::__clock_convs<_DestClock, _SourceClock, _Duration> || __detail::__clock_convs_sys<_DestClock, _SourceClock, _Duration> || __detail::__clock_convs_utc<_DestClock, _SourceClock, _Duration> || __detail::__clock_convs_sys_utc<_DestClock, _SourceClock, _Duration> || __detail::__clock_convs_utc_sys<_DestClock, _SourceClock, _Duration>auto clock_cast (const time_point< _SourceClock, _Duration > &__t)"
Convert a time point to a different clock. const time_zone * current_zone ()
template<typename _ToDur , typename _Rep , typename _Period > constexpr __enable_if_is_duration< _ToDur > duration_cast (const duration< _Rep, _Period > &__d)
template<typename _ToDur , typename _Rep , typename _Period > constexpr __enable_if_is_duration< _ToDur > floor (const duration< _Rep, _Period > &__d)
template<typename _ToDur , typename _Clock , typename _Dur > constexpr enable_if_t< __is_duration_v< _ToDur >, time_point< _Clock, _ToDur > > floor (const time_point< _Clock, _Dur > &__tp)
template<typename _Duration > leap_second_info get_leap_second_info (const utc_time< _Duration > &__ut)
const tzdb & get_tzdb ()
tzdb_list & get_tzdb_list ()
constexpr bool is_am (const hours &__h) noexcept
constexpr bool is_pm (const hours &__h) noexcept
template<typename _Duration > __detail::__local_time_fmt< _Duration > local_time_format (local_time< _Duration > __time, const string *__abbrev=nullptr, const seconds *__offset_sec=nullptr)
const time_zone * locate_zone (string_view __tz_name)
constexpr hours make12 (const hours &__h) noexcept
constexpr hours make24 (const hours &__h, bool __is_pm) noexcept
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const day &__d)
template<typename _CharT , typename _Traits , typename _Duration > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const file_time< _Duration > &__t)
template<typename _CharT , typename _Traits , typename _Duration > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const gps_time< _Duration > &__t)
template<typename _CharT , typename _Traits , typename _Duration > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const hh_mm_ss< _Duration > &__hms)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const local_info &__li)
Writes a local_info object to an ostream in an unspecified format. template<typename _CharT , typename _Traits , typename _Duration > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const local_time< _Duration > &__lt)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const month &__m)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const month_day &__md)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const month_day_last &__mdl)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const month_weekday &__mwd)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const month_weekday_last &__mwdl)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const sys_days &__dp)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const sys_info &__i)
Writes a sys_info object to an ostream in an unspecified format. template<typename _CharT , typename _Traits , typename _Duration >
requires (!treat_as_floating_point_v<typename _Duration::rep>) && ratio_less_v<typename _Duration::period, days::period>basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const sys_time< _Duration > &__tp)"
template<typename _CharT , typename _Traits , typename _Duration > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const tai_time< _Duration > &__t)
template<typename _CharT , typename _Traits , typename _Duration > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const utc_time< _Duration > &__t)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const weekday &__wd)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const weekday_indexed &__wdi)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const weekday_last &__wdl)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const year &__y)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const year_month &__ym)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const year_month_day &__ymd)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const year_month_day_last &__ymdl)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const year_month_weekday &__ymwd)
template<typename _CharT , typename _Traits > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const year_month_weekday_last &__ymwdl)
template<typename _CharT , typename _Traits , typename _Duration , typename _TimeZonePtr > basic_ostream< _CharT, _Traits > & operator<< (basic_ostream< _CharT, _Traits > &__os, const zoned_time< _Duration, _TimeZonePtr > &__t)
template<typename _CharT , typename _Traits , typename _Rep , typename _Period > basic_ostream< _CharT, _Traits > & operator<< (std::basic_ostream< _CharT, _Traits > &__os, const duration< _Rep, _Period > &__d)
template<typename _Dur1 , typename _TZPtr1 , typename _Dur2 , typename _TZPtr2 > bool operator== (const zoned_time< _Dur1, _TZPtr1 > &__x, const zoned_time< _Dur2, _TZPtr2 > &__y)
const tzdb & reload_tzdb ()
string remote_version ()
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 > round (const duration< _Rep, _Period > &__d)
template<typename _ToDur , typename _Clock , typename _Dur > constexpr enable_if_t< __is_duration_v< _ToDur > &&!treat_as_floating_point_v< typename _ToDur::rep >, time_point< _Clock, _ToDur > > 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 > > time_point_cast (const time_point< _Clock, _Dur > &__t)
zoned_time () -> zoned_time< seconds >
template<typename _TimeZonePtrOrName > zoned_time (_TimeZonePtrOrName &&) -> zoned_time< seconds, __time_zone_representation< _TimeZonePtrOrName > >
template<typename _TimeZonePtrOrName , typename _Duration > zoned_time (_TimeZonePtrOrName &&, local_time< _Duration >, choose=choose::earliest) -> zoned_time< common_type_t< _Duration, seconds >, __time_zone_representation< _TimeZonePtrOrName > >
template<typename _TimeZonePtrOrName , typename _Duration > zoned_time (_TimeZonePtrOrName &&, sys_time< _Duration >) -> zoned_time< common_type_t< _Duration, seconds >, __time_zone_representation< _TimeZonePtrOrName > >
template<typename _Duration , typename _TimeZonePtrOrName , typename _TimeZonePtr2 > zoned_time (_TimeZonePtrOrName &&, zoned_time< _Duration, _TimeZonePtr2 >, choose=choose::earliest) -> zoned_time< common_type_t< _Duration, seconds >, __time_zone_representation< _TimeZonePtrOrName > >
template<typename _Duration > zoned_time (sys_time< _Duration >) -> zoned_time< common_type_t< _Duration, seconds > >



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)
The difference between two durations.



template<typename _Rep1 , typename _Rep2 , typename _Period > constexpr duration< __common_rep_t< _Rep2, _Rep1 >, _Period > 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 > operator/ (const duration< _Rep1, _Period > &__d, const _Rep2 &__s)
template<typename _Rep1 , typename _Period1 , typename _Rep2 , typename _Period2 > constexpr common_type< _Rep1, _Rep2 >::type 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 > 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 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 _Rep2 , typename _Period2 > constexpr bool 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 _Rep2 , typename _Period2 > constexpr bool 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 > operator+ (const duration< _Rep1, _Period1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
Adjust a time point forwards by the given duration. 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)
Adjust a time point backwards by the given duration. template<typename _Clock , typename _Dur1 , typename _Dur2 > constexpr common_type< _Dur1, _Dur2 >::type operator- (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
The difference between two time points (as a duration)



template<typename _Clock , typename _Dur1 , typename _Dur2 > constexpr bool operator!= (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 > constexpr bool operator< (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 > constexpr bool operator<= (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 > constexpr bool operator> (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)
template<typename _Clock , typename _Dur1 , typename _Dur2 > constexpr bool operator>= (const time_point< _Clock, _Dur1 > &__lhs, const time_point< _Clock, _Dur2 > &__rhs)


Variables


template<typename _Tp , typename _Clock > constexpr bool __is_time_point_for_v
template<typename _Clock , typename _Duration > constexpr bool __is_time_point_for_v< time_point< _Clock, _Duration >, _Clock >
constexpr month April
constexpr month August
constexpr month December
constexpr month February
constexpr weekday Friday
template<typename _Tp > constexpr bool is_clock_v
template<typename _Tp > constexpr bool is_clock_v< _Tp >
template<> constexpr bool is_clock_v< file_clock >
template<> constexpr bool is_clock_v< gps_clock >
template<> constexpr bool is_clock_v< steady_clock >
template<> constexpr bool is_clock_v< system_clock >
template<> constexpr bool is_clock_v< tai_clock >
template<> constexpr bool is_clock_v< utc_clock >
constexpr month January
constexpr month July
constexpr month June
constexpr last_spec last
constexpr month March
constexpr month May
constexpr weekday Monday
constexpr month November
constexpr month October
constexpr weekday Saturday
constexpr month September
constexpr weekday Sunday
constexpr weekday Thursday
template<typename _Rep > constexpr bool treat_as_floating_point_v
template<> constexpr bool treat_as_floating_point_v< double >
template<> constexpr bool treat_as_floating_point_v< float >
template<> constexpr bool treat_as_floating_point_v< int >
template<> constexpr bool treat_as_floating_point_v< long >
template<> constexpr bool treat_as_floating_point_v< long double >
template<> constexpr bool treat_as_floating_point_v< long long >
constexpr weekday Tuesday
constexpr weekday Wednesday

Detailed Description

ISO C++ 2011 namespace for date and time utilities.

Author

Generated automatically by Doxygen for libstdc++ from the source code.

libstdc++