Iros
Loading...
Searching...
No Matches
duration_common_type.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
di/chrono/duration/duration_forward_declaration.h
"
4
#include "
di/meta/common.h
"
5
6
namespace
di
{
7
template
<
typename
Rep1, math::detail::IsRatio Period1,
typename
Rep2, math::detail::IsRatio Period2>
8
requires
(
concepts::CommonWith<Rep1, Rep2>
)
9
struct
meta::CustomCommonType
<
chrono::Duration<Rep1, Period1>
,
chrono::Duration<Rep2, Period2>
> {
10
using
Type
=
11
chrono::Duration<meta::CommonType<Rep1, Rep2>
,
12
math::Ratio
<
math::gcd
(Period1::num, Period2::num),
math::lcm
(Period1::den, Period2::den)>>;
13
};
14
}
di::chrono::Duration
Definition
duration_forward_declaration.h:7
di::concepts::CommonWith
Definition
common.h:208
duration_forward_declaration.h
common.h
di::math::lcm
constexpr auto lcm
Definition
lcm.h:34
di::math::gcd
constexpr auto gcd
Definition
gcd.h:44
di
Definition
zstring_parser.h:9
di::math::Ratio
Definition
ratio.h:32
di::meta::CustomCommonType
Definition
common.h:13
di::meta::CustomCommonType< chrono::Duration< Rep1, Period1 >, chrono::Duration< Rep2, Period2 > >::Type
chrono::Duration< meta::CommonType< Rep1, Rep2 >, math::Ratio< math::gcd(Period1::num, Period2::num), math::lcm(Period1::den, Period2::den)> > Type
Definition
duration_common_type.h:10
libs
di
include
di
chrono
duration
duration_common_type.h
Generated by
1.13.0