feat: force_in(U) added for quantity_point

This commit is contained in:
Mateusz Pusz
2023-09-13 18:40:51 +02:00
parent f74da4335b
commit dc2d0dfca7

View File

@@ -183,12 +183,19 @@ public:
}
template<Unit U>
requires detail::QuantityConvertibleTo<quantity_type, quantity<::mp_units::reference<quantity_spec, U{}>{}, Rep>>
[[nodiscard]] constexpr quantity_point<::mp_units::reference<quantity_spec, U{}>{}, PO, Rep> in(U) const
requires detail::QuantityConvertibleTo<quantity_type, quantity<quantity_spec[U{}], Rep>>
[[nodiscard]] constexpr quantity_point<quantity_spec[U{}], PO, Rep> in(U) const
{
return make_quantity_point<PO>(quantity_ref_from(PO).in(U{}));
}
template<Unit U>
requires requires(quantity_type q) { value_cast<U{}>(q); }
[[nodiscard]] constexpr quantity_point<quantity_spec[U{}], PO, Rep> force_in(U) const
{
return make_quantity_point<PO>(quantity_ref_from(PO).force_in(U{}));
}
// member unary operators
constexpr quantity_point& operator++()
requires requires { ++quantity_from_origin_; }