di 0.1.0
Loading...
Searching...
No Matches
di::chrono::Duration< Rep, Per > Class Template Reference

#include <di/chrono/duration/duration.h>

Public Types

using Representation = Rep
using Period = Per::Type

Public Member Functions

 Duration ()=default
 Duration (Duration const &)=default
template<typename Val>
requires (concepts::ConvertibleTo<Val const&, Representation>)
constexpr Duration (Val const &count)
template<typename Rep2, typename Period2>
requires (math::RatioDivide<Period2, Period>::den == 1)
constexpr Duration (Duration< Rep2, Period2 > const &other)
auto operator= (Duration const &) -> Duration &=default
constexpr auto count () const -> Representation
constexpr auto operator+ () const
constexpr auto operator- () const
constexpr auto operator++ () -> Duration &
constexpr auto operator++ (int) -> Duration
constexpr auto operator-- () -> Duration &
constexpr auto operator-- (int) -> Duration
constexpr auto operator+= (Duration const &other) -> Duration &
constexpr auto operator-= (Duration const &other) -> Duration &
constexpr auto operator*= (Representation const &other) -> Duration &
constexpr auto operator/= (Representation const &other) -> Duration &
constexpr auto operator%= (Representation const &other) -> Duration &
constexpr auto operator%= (Duration const &other) -> Duration &

Static Public Member Functions

static constexpr auto zero ()
static constexpr auto min ()
static constexpr auto max ()

Member Typedef Documentation

◆ Period

template<typename Rep, math::detail::IsRatio Per>
using di::chrono::Duration< Rep, Per >::Period = Per::Type

◆ Representation

template<typename Rep, math::detail::IsRatio Per>
using di::chrono::Duration< Rep, Per >::Representation = Rep

Constructor & Destructor Documentation

◆ Duration() [1/4]

template<typename Rep, math::detail::IsRatio Per>
di::chrono::Duration< Rep, Per >::Duration ( )
default

◆ Duration() [2/4]

template<typename Rep, math::detail::IsRatio Per>
di::chrono::Duration< Rep, Per >::Duration ( Duration< Rep, Per > const & )
default

◆ Duration() [3/4]

template<typename Rep, math::detail::IsRatio Per>
template<typename Val>
requires (concepts::ConvertibleTo<Val const&, Representation>)
di::chrono::Duration< Rep, Per >::Duration ( Val const & count)
inlineexplicitconstexpr

◆ Duration() [4/4]

template<typename Rep, math::detail::IsRatio Per>
template<typename Rep2, typename Period2>
requires (math::RatioDivide<Period2, Period>::den == 1)
di::chrono::Duration< Rep, Per >::Duration ( Duration< Rep2, Period2 > const & other)
inlineconstexpr

Member Function Documentation

◆ count()

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::count ( ) const->Representation
inlineconstexpr

◆ max()

template<typename Rep, math::detail::IsRatio Per>
constexpr auto di::chrono::Duration< Rep, Per >::max ( )
inlinestaticconstexpr

◆ min()

template<typename Rep, math::detail::IsRatio Per>
constexpr auto di::chrono::Duration< Rep, Per >::min ( )
inlinestaticconstexpr

◆ operator%=() [1/2]

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator%= ( Duration< Rep, Per > const & other) ->Duration &
inlineconstexpr

◆ operator%=() [2/2]

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator%= ( Representation const & other) ->Duration &
inlineconstexpr

◆ operator*=()

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator*= ( Representation const & other) ->Duration &
inlineconstexpr

◆ operator+()

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator+ ( ) const
inlineconstexpr

◆ operator++() [1/2]

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator++ ( ) ->Duration &
inlineconstexpr

◆ operator++() [2/2]

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator++ ( int ) ->Duration
inlineconstexpr

◆ operator+=()

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator+= ( Duration< Rep, Per > const & other) ->Duration &
inlineconstexpr

◆ operator-()

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator- ( ) const
inlineconstexpr

◆ operator--() [1/2]

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator-- ( ) ->Duration &
inlineconstexpr

◆ operator--() [2/2]

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator-- ( int ) ->Duration
inlineconstexpr

◆ operator-=()

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator-= ( Duration< Rep, Per > const & other) ->Duration &
inlineconstexpr

◆ operator/=()

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator/= ( Representation const & other) ->Duration &
inlineconstexpr

◆ operator=()

template<typename Rep, math::detail::IsRatio Per>
auto di::chrono::Duration< Rep, Per >::operator= ( Duration< Rep, Per > const & ) ->Duration &=default
default

◆ zero()

template<typename Rep, math::detail::IsRatio Per>
constexpr auto di::chrono::Duration< Rep, Per >::zero ( )
inlinestaticconstexpr

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