Dynalib Utils
Public Types | Public Member Functions | Friends | List of all members
date::zoned_time< Duration, TimeZonePtr > Class Template Reference

#include <tz.h>

Public Types

using duration = typename std::common_type< Duration, std::chrono::seconds >::type
 

Public Member Functions

template<class T = TimeZonePtr, class = decltype(zoned_traits<T>::default_zone())>
 zoned_time ()
 
template<class T = TimeZonePtr, class = decltype(zoned_traits<T>::default_zone())>
 zoned_time (const sys_time< Duration > &st)
 
 zoned_time (TimeZonePtr z)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())) >::value >::type>
 zoned_time (const std::string &name)
 
template<class Duration2 , class = typename std::enable_if < std::is_convertible<sys_time<Duration2>, sys_time<Duration>>::value >::type>
 zoned_time (const zoned_time< Duration2, TimeZonePtr > &zt) NOEXCEPT
 
 zoned_time (TimeZonePtr z, const sys_time< Duration > &st)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_convertible < decltype(std::declval<T&>()->to_sys(local_time<Duration>{})), sys_time<duration> >::value, ::type >
 zoned_time (TimeZonePtr z, const local_time< Duration > &tp)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_convertible < decltype(std::declval<T&>()->to_sys(local_time<Duration>{}, choose::earliest)), sys_time<duration> >::value, ::type >
 zoned_time (TimeZonePtr z, const local_time< Duration > &tp, choose c)
 
template<class Duration2 , class TimeZonePtr2 , class = typename std::enable_if < std::is_convertible<sys_time<Duration2>, sys_time<Duration>>::value >::type>
 zoned_time (TimeZonePtr z, const zoned_time< Duration2, TimeZonePtr2 > &zt)
 
template<class Duration2 , class TimeZonePtr2 , class = typename std::enable_if < std::is_convertible<sys_time<Duration2>, sys_time<Duration>>::value >::type>
 zoned_time (TimeZonePtr z, const zoned_time< Duration2, TimeZonePtr2 > &zt, choose)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())), sys_time<Duration> >::value >::type>
 zoned_time (const std::string &name, const sys_time< Duration > &st)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())), sys_time<Duration> >::value >::type>
 zoned_time (const char *name, const sys_time< Duration > &st)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())), local_time<Duration> >::value >::type>
 zoned_time (const std::string &name, const local_time< Duration > &tp)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())), local_time<Duration> >::value >::type>
 zoned_time (const char *name, const local_time< Duration > &tp)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())), local_time<Duration>, choose >::value >::type>
 zoned_time (const std::string &name, const local_time< Duration > &tp, choose c)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())), local_time<Duration>, choose >::value >::type>
 zoned_time (const char *name, const local_time< Duration > &tp, choose c)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())), zoned_time >::value >::type>
 zoned_time (const std::string &name, const zoned_time &zt)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())), zoned_time >::value >::type>
 zoned_time (const char *name, const zoned_time &zt)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())), zoned_time, choose >::value >::type>
 zoned_time (const std::string &name, const zoned_time &zt, choose)
 
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_constructible < zoned_time, decltype(zoned_traits<T>::locate_zone(std::string())), zoned_time, choose >::value >::type>
 zoned_time (const char *name, const zoned_time &zt, choose)
 
zoned_timeoperator= (const sys_time< Duration > &st)
 
zoned_timeoperator= (const local_time< Duration > &ut)
 
 operator sys_time< duration > () const
 
 operator local_time< duration > () const
 
TimeZonePtr get_time_zone () const
 
local_time< durationget_local_time () const
 
sys_time< durationget_sys_time () const
 
sys_info get_info () const
 
template<class T , class >
 zoned_time (TimeZonePtr z, const local_time< Duration > &t)
 
template<class T , class >
 zoned_time (TimeZonePtr z, const local_time< Duration > &t, choose c)
 

Friends

template<class D , class T >
class zoned_time
 
template<class Duration1 , class Duration2 , class TimeZonePtr1 >
bool operator== (const zoned_time< Duration1, TimeZonePtr1 > &x, const zoned_time< Duration2, TimeZonePtr1 > &y)
 
template<class CharT , class Traits , class Duration1 , class TimeZonePtr1 >
std::basic_ostream< CharT, Traits > & operator<< (std::basic_ostream< CharT, Traits > &os, const zoned_time< Duration1, TimeZonePtr1 > &t)
 

Member Typedef Documentation

◆ duration

template<class Duration, class TimeZonePtr = const time_zone*>
using date::zoned_time< Duration, TimeZonePtr >::duration = typename std::common_type<Duration, std::chrono::seconds>::type

Constructor & Destructor Documentation

◆ zoned_time() [1/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( )
inline

◆ zoned_time() [2/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const sys_time< Duration > &  st)
inline

◆ zoned_time() [3/22]

template<class Duration , class TimeZonePtr >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( TimeZonePtr  z)
inlineexplicit

◆ zoned_time() [4/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const std::string &  name)
inlineexplicit

◆ zoned_time() [5/22]

template<class Duration , class TimeZonePtr >
template<class Duration2 , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const zoned_time< Duration2, TimeZonePtr > &  zt)
inline

◆ zoned_time() [6/22]

template<class Duration , class TimeZonePtr >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( TimeZonePtr  z,
const sys_time< Duration > &  st 
)
inline

◆ zoned_time() [7/22]

template<class Duration, class TimeZonePtr = const time_zone*>
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_convertible < decltype(std::declval<T&>()->to_sys(local_time<Duration>{})), sys_time<duration> >::value, ::type >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( TimeZonePtr  z,
const local_time< Duration > &  tp 
)

◆ zoned_time() [8/22]

template<class Duration, class TimeZonePtr = const time_zone*>
template<class T = TimeZonePtr, class = typename std::enable_if < std::is_convertible < decltype(std::declval<T&>()->to_sys(local_time<Duration>{}, choose::earliest)), sys_time<duration> >::value, ::type >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( TimeZonePtr  z,
const local_time< Duration > &  tp,
choose  c 
)

◆ zoned_time() [9/22]

template<class Duration , class TimeZonePtr >
template<class Duration2 , class TimeZonePtr2 , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( TimeZonePtr  z,
const zoned_time< Duration2, TimeZonePtr2 > &  zt 
)
inline

◆ zoned_time() [10/22]

template<class Duration , class TimeZonePtr >
template<class Duration2 , class TimeZonePtr2 , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( TimeZonePtr  z,
const zoned_time< Duration2, TimeZonePtr2 > &  zt,
choose   
)
inline

◆ zoned_time() [11/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const std::string &  name,
const sys_time< Duration > &  st 
)
inline

◆ zoned_time() [12/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const char *  name,
const sys_time< Duration > &  st 
)
inline

◆ zoned_time() [13/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const std::string &  name,
const local_time< Duration > &  tp 
)
inline

◆ zoned_time() [14/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const char *  name,
const local_time< Duration > &  tp 
)
inline

◆ zoned_time() [15/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const std::string &  name,
const local_time< Duration > &  tp,
choose  c 
)
inline

◆ zoned_time() [16/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const char *  name,
const local_time< Duration > &  tp,
choose  c 
)
inline

◆ zoned_time() [17/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const std::string &  name,
const zoned_time< Duration, TimeZonePtr > &  zt 
)
inline

◆ zoned_time() [18/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const char *  name,
const zoned_time< Duration, TimeZonePtr > &  zt 
)
inline

◆ zoned_time() [19/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const std::string &  name,
const zoned_time< Duration, TimeZonePtr > &  zt,
choose  c 
)
inline

◆ zoned_time() [20/22]

template<class Duration , class TimeZonePtr >
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( const char *  name,
const zoned_time< Duration, TimeZonePtr > &  zt,
choose  c 
)
inline

◆ zoned_time() [21/22]

template<class Duration, class TimeZonePtr = const time_zone*>
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( TimeZonePtr  z,
const local_time< Duration > &  t 
)
inline

◆ zoned_time() [22/22]

template<class Duration, class TimeZonePtr = const time_zone*>
template<class T , class >
date::zoned_time< Duration, TimeZonePtr >::zoned_time ( TimeZonePtr  z,
const local_time< Duration > &  t,
choose  c 
)
inline

Member Function Documentation

◆ get_info()

template<class Duration , class TimeZonePtr >
sys_info date::zoned_time< Duration, TimeZonePtr >::get_info ( ) const
inline

◆ get_local_time()

template<class Duration , class TimeZonePtr >
local_time< typename zoned_time< Duration, TimeZonePtr >::duration > date::zoned_time< Duration, TimeZonePtr >::get_local_time ( ) const
inline

◆ get_sys_time()

template<class Duration , class TimeZonePtr >
sys_time< typename zoned_time< Duration, TimeZonePtr >::duration > date::zoned_time< Duration, TimeZonePtr >::get_sys_time ( ) const
inline

◆ get_time_zone()

template<class Duration , class TimeZonePtr >
TimeZonePtr date::zoned_time< Duration, TimeZonePtr >::get_time_zone ( ) const
inline

◆ operator local_time< duration >()

template<class Duration, class TimeZonePtr = const time_zone*>
date::zoned_time< Duration, TimeZonePtr >::operator local_time< duration > ( ) const
explicit

◆ operator sys_time< duration >()

template<class Duration, class TimeZonePtr = const time_zone*>
date::zoned_time< Duration, TimeZonePtr >::operator sys_time< duration > ( ) const
explicit

◆ operator=() [1/2]

template<class Duration , class TimeZonePtr >
zoned_time< Duration, TimeZonePtr > & date::zoned_time< Duration, TimeZonePtr >::operator= ( const sys_time< Duration > &  st)
inline

◆ operator=() [2/2]

template<class Duration , class TimeZonePtr >
zoned_time< Duration, TimeZonePtr > & date::zoned_time< Duration, TimeZonePtr >::operator= ( const local_time< Duration > &  ut)
inline

Friends And Related Function Documentation

◆ operator<<

template<class Duration, class TimeZonePtr = const time_zone*>
template<class CharT , class Traits , class Duration1 , class TimeZonePtr1 >
std::basic_ostream<CharT, Traits>& operator<< ( std::basic_ostream< CharT, Traits > &  os,
const zoned_time< Duration1, TimeZonePtr1 > &  t 
)
friend

◆ operator==

template<class Duration, class TimeZonePtr = const time_zone*>
template<class Duration1 , class Duration2 , class TimeZonePtr1 >
bool operator== ( const zoned_time< Duration1, TimeZonePtr1 > &  x,
const zoned_time< Duration2, TimeZonePtr1 > &  y 
)
friend

◆ zoned_time

template<class Duration, class TimeZonePtr = const time_zone*>
template<class D , class T >
friend class zoned_time
friend

The documentation for this class was generated from the following file: