Feat: Overloads for floor and ceil accepting quantities (#314)

* feat: overloads for floor and ceil accepting quantities

* require same type for dim and rep

* be specific for msvc
This commit is contained in:
Markus Hofbauer
2021-11-15 12:23:28 +01:00
committed by GitHub
parent 3f28b55ab1
commit 50b9050d6b
3 changed files with 48 additions and 0 deletions
+6
View File
@@ -78,6 +78,9 @@ static_assert(floor<si::second>(1999._q_ms) == 1_q_s);
static_assert(floor<si::second>(-1000._q_ms) == -1_q_s);
static_assert(floor<si::second>(-999._q_ms) == -1_q_s);
// floor with quantity
static_assert(compare<decltype(floor<si::time<si::second>>(1_q_s)), decltype(1_q_s)>);
// ceil
// integral types
static_assert(compare<decltype(ceil<si::second>(1_q_s)), decltype(1_q_s)>);
@@ -97,6 +100,9 @@ static_assert(ceil<si::second>(1001._q_ms) == 2_q_s);
static_assert(ceil<si::second>(1999._q_ms) == 2_q_s);
static_assert(ceil<si::second>(-1000._q_ms) == -1_q_s);
static_assert(ceil<si::second>(-999._q_ms) == 0_q_s);
// ceil with quantity
static_assert(compare<decltype(ceil<si::time<si::second>>(1_q_s)), decltype(1_q_s)>);
#endif
} // namespace