refactor: 💥 basic_concepts, quantity and quantity_cast refactored

BREAKING CHANGE:  ScalableNumber renamed to QuantityValue

Resolves #107
This commit is contained in:
Mateusz Pusz committed 2020-10-06 18:17:52 +02:00
1 parent 40f205b381
commit cfc90f4aac
96 files changed
+1620 -1017

No files matched your search

+2 -2
View File
@@ -11,7 +11,7 @@ Interface
The difference is that it uses ``double`` as a default representation and has
a few additional member types and functions::
template<Dimension D, UnitOf<D> U, ScalableNumber Rep = double>
template<Dimension D, UnitOf<D> U, QuantityValue Rep = double>
class quantity {
public:
using dimension = D;
@@ -27,7 +27,7 @@ a few additional member types and functions::
[[nodiscard]] constexpr Quantity auto operator*(const quantity<D1, U1, Rep1>& lhs,
const quantity<D2, U2, Rep2>& rhs);
template<ScalableNumber Value, typename D, typename U, typename Rep>
template<QuantityValue Value, typename D, typename U, typename Rep>
requires std::magma<std::ranges::divided_by, Value, Rep>
[[nodiscard]] constexpr Quantity auto operator/(const Value& v,
const quantity<D, U, Rep>& q);