refactor!: replace one_rep with reference<D, U>
This commit is contained in:
1 parent
bf27b256b2
commit
9a520edfe9
65 files changed
+798
-721
No files matched your search
@@ -300,8 +300,9 @@ template<QuantityKind QK1, QuantityKindEquivalentTo<QK1> QK2>
|
||||
return detail::make_quantity_kind<QK1>(lhs.common() - rhs.common());
|
||||
}
|
||||
|
||||
template<QuantityKind QK, Quantity Q>
|
||||
[[nodiscard]] constexpr QuantityKind auto operator*(const QK& lhs, const Q& rhs)
|
||||
template<QuantityKind QK, typename QuantityOrReference>
|
||||
requires Quantity<QuantityOrReference> || Reference<QuantityOrReference>
|
||||
[[nodiscard]] constexpr QuantityKind auto operator*(const QK& lhs, const QuantityOrReference& rhs)
|
||||
requires requires { lhs.common() * rhs; }
|
||||
{
|
||||
return detail::downcasted_kind<QK>(lhs.common() * rhs);
|
||||
@@ -321,11 +322,13 @@ template<QuantityKind QK1, QuantityKindRelatedTo<QK1> QK2>
|
||||
return detail::downcasted_kind<QK1>(lhs.common() * rhs.common());
|
||||
}
|
||||
|
||||
template<QuantityKind QK, Quantity Q>
|
||||
[[nodiscard]] constexpr QuantityKind auto operator/(const QK& lhs, const Q& rhs)
|
||||
template<QuantityKind QK, typename QuantityOrReference>
|
||||
requires Quantity<QuantityOrReference> || Reference<QuantityOrReference>
|
||||
[[nodiscard]] constexpr QuantityKind auto operator/(const QK& lhs, const QuantityOrReference& rhs)
|
||||
requires requires { lhs.common() / rhs; }
|
||||
{
|
||||
gsl_ExpectsAudit(rhs.count() != quantity_values<typename Q::rep>::zero());
|
||||
if constexpr (Quantity<QuantityOrReference>)
|
||||
gsl_ExpectsAudit(rhs.count() != quantity_values<typename QuantityOrReference::rep>::zero());
|
||||
return detail::downcasted_kind<QK>(lhs.common() / rhs);
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user