Boost  v1.57.0
doxygen for www.boost.org
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
boost::chrono::detail Namespace Reference

Classes

struct  chrono_numeric_limits
 
struct  chrono_numeric_limits< double, true >
 
struct  chrono_numeric_limits< float, true >
 
struct  chrono_numeric_limits< long double, true >
 
struct  chrono_numeric_limits< T, true >
 
struct  duration_cast
 
struct  duration_cast_aux
 
struct  duration_cast_aux< FromDuration, ToDuration, Period, false, false >
 
struct  duration_cast_aux< FromDuration, ToDuration, Period, false, true >
 
struct  duration_cast_aux< FromDuration, ToDuration, Period, true, false >
 
struct  duration_cast_aux< FromDuration, ToDuration, Period, true, true >
 
struct  duration_divide_imp
 
struct  duration_divide_imp2
 
struct  duration_divide_imp2< Rep1, duration< Rep2, Period >, true >
 
struct  duration_divide_imp< duration< Rep1, Period >, Rep2, true >
 
struct  duration_divide_result
 
struct  duration_divide_result2
 
struct  duration_divide_result2< Rep1, duration< Rep2, Period >, false >
 
struct  duration_divide_result< duration< Rep1, Period >, Rep2, false >
 
struct  duration_eq
 
struct  duration_eq< LhsDuration, LhsDuration >
 
struct  duration_io_intermediate
 
struct  duration_io_intermediate< process_times< Rep >, false >
 
struct  duration_io_intermediate< Rep, true >
 
struct  duration_lt
 
struct  duration_lt< LhsDuration, LhsDuration >
 
struct  duration_modulo_imp
 
struct  duration_modulo_imp< duration< Rep1, Period >, Rep2, true >
 
struct  duration_modulo_result
 
struct  duration_modulo_result< duration< Rep1, Period >, Rep2, false >
 
struct  duration_units_default_holder
 
struct  duration_units_default_initializer_t
 
struct  ios_base_data
 
struct  ios_base_data_aux
 
struct  is_duration
 
struct  is_duration< duration< Rep, Period > >
 
struct  numeric_limits
 
struct  time_get
 
class  time_man
 
class  time_manip
 
struct  xalloc_key_holder
 xalloc key holder. More...
 

Functions

template<typename intermediate_type >
enable_if< is_integral
< intermediate_type >, bool >
::type 
reduce (intermediate_type &r, unsigned long long &den, std::ios_base::iostate &err)
 
template<typename intermediate_type >
disable_if< is_integral
< intermediate_type >, bool >
::type 
reduce (intermediate_type &, unsigned long long &, std::ios_base::iostate &)
 
int32_t is_leap (int32_t year)
 
int32_t days_from_0 (int32_t year)
 
int32_t days_from_1970 (int32_t year)
 
int32_t days_from_1jan (int32_t year, int32_t month, int32_t day)
 
time_t internal_timegm (std::tm const *t)
 
unsigned days_before_years (int32_t y)
 from_ymd could be made more efficient by using a table day_count_table indexed by the y%400. More...
 
template<class Int >
void civil_from_days (Int z, Int &y, unsigned &m, unsigned &d) BOOST_NOEXCEPT
 
std::tm * internal_gmtime (std::time_t const *t, std::tm *tm)
 
template<class CharT , class InputIterator >
minutes extract_z (InputIterator &b, InputIterator e, std::ios_base::iostate &err, const std::ctype< CharT > &ct)
 

Function Documentation

template<class Int >
void boost::chrono::detail::civil_from_days ( Int  z,
Int &  y,
unsigned &  m,
unsigned &  d 
)
inline
unsigned boost::chrono::detail::days_before_years ( int32_t  y)
inline

from_ymd could be made more efficient by using a table day_count_table indexed by the y%400.

This table could contain the day_count by*365 + by/4 - by/100 + by/400

from_ymd = (by/400)*days_by_400_years+day_count_table[by%400] + days_in_year_before[is_leap_table[by%400]][m-1] + d;

Referenced by internal_gmtime().

int32_t boost::chrono::detail::days_from_0 ( int32_t  year)
inline

Referenced by days_from_1970().

int32_t boost::chrono::detail::days_from_1970 ( int32_t  year)
inline

References days_from_0().

Referenced by internal_timegm().

int32_t boost::chrono::detail::days_from_1jan ( int32_t  year,
int32_t  month,
int32_t  day 
)
inline

References is_leap().

Referenced by internal_timegm().

template<class CharT , class InputIterator >
minutes boost::chrono::detail::extract_z ( InputIterator &  b,
InputIterator  e,
std::ios_base::iostate &  err,
const std::ctype< CharT > &  ct 
)
std::tm* boost::chrono::detail::internal_gmtime ( std::time_t const *  t,
std::tm *  tm 
)
inline
time_t boost::chrono::detail::internal_timegm ( std::tm const *  t)
inline
int32_t boost::chrono::detail::is_leap ( int32_t  year)
inline

Referenced by days_from_1jan(), and internal_gmtime().

template<typename intermediate_type >
enable_if<is_integral<intermediate_type> , bool>::type boost::chrono::detail::reduce ( intermediate_type &  r,
unsigned long long &  den,
std::ios_base::iostate &  err 
)
template<typename intermediate_type >
disable_if<is_integral<intermediate_type> , bool>::type boost::chrono::detail::reduce ( intermediate_type &  ,
unsigned long long &  ,
std::ios_base::iostate &   
)