libstdc++: chrono.h File Reference

libstdc++

chrono.h File Reference

Go to the source code of this file.

## Classes
struct | std::common_type< chrono::duration< _Rep, _Period > >
struct | std::common_type< chrono::duration< _Rep, _Period >, chrono::duration< _Rep, _Period > >
struct | std::common_type< chrono::duration< _Rep1, _Period1 >, chrono::duration< _Rep2, _Period2 > >
struct | std::common_type< chrono::time_point< _Clock, _Duration > >
struct | std::common_type< chrono::time_point< _Clock, _Duration >, chrono::time_point< _Clock, _Duration > >
struct | std::common_type< chrono::time_point< _Clock, _Duration1 >, chrono::time_point< _Clock, _Duration2 > >
class | std::chrono::duration< _Rep, _Period >
struct | std::chrono::duration_values< _Rep >
struct | std::chrono::steady_clock
struct | std::chrono::system_clock
class | std::chrono::time_point< _Clock, _Dur >
struct | std::chrono::treat_as_floating_point< _Rep >

## Namespaces
namespace | std
namespace | std::chrono
namespace | std::filesystem
namespace | std::literals
namespace | std::literals::chrono_literals

## Typedefs
using | std::chrono::days
using | std::chrono::file_clock
template<typename _Duration>
using | std::chrono::file_time
using | std::chrono::high_resolution_clock
using | std::chrono::hours
using | std::chrono::microseconds
using | std::chrono::milliseconds
using | std::chrono::minutes
using | std::chrono::months
using | std::chrono::nanoseconds
using | std::chrono::seconds
using | std::chrono::sys_days
using | std::chrono::sys_seconds
template<typename _Duration>
using | std::chrono::sys_time
using | std::chrono::weeks
using | std::chrono::years

## Functions
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::__detail::ceil (const 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_v< _ToDur >, 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_v< _ToDur >, time_point< _Clock, _ToDur > > | std::chrono::floor (const time_point< _Clock, _Dur > &__tp)
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, milli > | std::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, nano > | std::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, micro > | std::literals::chrono_literals::operator""us (long double __usecs)
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< __is_duration_v< _ToDur > &&!treat_as_floating_point_v< typename _ToDur::rep >, 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)
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, __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 _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 _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 auto | 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 _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 _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, three_way_comparable_with< _Dur1 > _Dur2>
constexpr auto | 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)

## Variables
template<typename _Tp>
constexpr bool | std::chrono::is_clock_v
template<typename _Tp>
constexpr bool | std::chrono::is_clock_v< _Tp >
template<>
constexpr bool | std::chrono::is_clock_v< file_clock >
template<>
constexpr bool | std::chrono::is_clock_v< steady_clock >
template<>
constexpr bool | std::chrono::is_clock_v< system_clock >
template<typename _Rep>
constexpr bool | std::chrono::treat_as_floating_point_v
template<>
constexpr bool | std::chrono::treat_as_floating_point_v< double >
template<>
constexpr bool | std::chrono::treat_as_floating_point_v< float >
template<>
constexpr bool | std::chrono::treat_as_floating_point_v< int >
template<>
constexpr bool | std::chrono::treat_as_floating_point_v< long >
template<>
constexpr bool | std::chrono::treat_as_floating_point_v< long double >
template<>
constexpr bool | std::chrono::treat_as_floating_point_v< long long >

## Detailed Description

This is an internal header file, included by other library headers. Do not attempt to use it directly. Instead, include <chrono>.

Definition in file chrono.h.

## Function Documentation

## ◆ ceil()

template<typename _ToDur, typename _Rep, typename _Period>

__enable_if_is_duration< _ToDur > std::chrono::ceil | ( | const duration< _Rep, _Period > & | __d | ) |
| nodiscardconstexpr

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

  _ToDur | The result type must be a duration.

Parameters

  __d | A duration.

Returns
  The value of __d converted to type _ToDur.

Since
  C++17

Definition at line 412 of file chrono.h.