|
template<typename OtherUnit , typename OtherRep , typename Enable = EnableIfImplicitOkIs<true, OtherUnit, OtherRep>> |
constexpr | Quantity (Quantity< OtherUnit, OtherRep > other) |
|
template<typename OtherUnit , typename OtherRep , typename Enable = EnableIfImplicitOkIs<false, OtherUnit, OtherRep>, typename ThisUnusedTemplateParameterDistinguishesUsFromTheAboveConstructor = void> |
constexpr | Quantity (Quantity< OtherUnit, OtherRep > other)=delete |
|
constexpr | Quantity (Zero) |
|
template<typename T , std::enable_if_t< std::is_convertible< CorrespondingQuantityT< T >, Quantity >::value, int > = 0> |
constexpr | Quantity (T &&x) |
|
template<typename NewRep , typename NewUnit , typename = std::enable_if_t<IsUnit<AssociatedUnitT<NewUnit>>::value>> |
constexpr auto | as (NewUnit) const |
|
template<typename NewUnit , typename = std::enable_if_t<IsUnit<AssociatedUnitT<NewUnit>>::value>> |
constexpr auto | as (NewUnit u) const |
|
template<typename NewRep , typename NewUnit , typename = std::enable_if_t<IsUnit<AssociatedUnitT<NewUnit>>::value>> |
constexpr NewRep | in (NewUnit u) const |
|
template<typename NewUnit , typename = std::enable_if_t<IsUnit<AssociatedUnitT<NewUnit>>::value>> |
constexpr Rep | in (NewUnit u) const |
|
template<typename U > |
constexpr auto | as () const -> decltype(as(U{})) |
|
template<typename U , typename R , typename = std::enable_if_t<IsUnit<U>::value>> |
constexpr auto | as () const |
|
template<typename U > |
constexpr auto | in () const -> decltype(in(U{})) |
|
template<typename U , typename R , typename = std::enable_if_t<IsUnit<U>::value>> |
constexpr auto | in () const |
|
template<typename NewUnit > |
constexpr auto | coerce_as (NewUnit) const |
|
template<typename NewRep , typename NewUnit > |
constexpr auto | coerce_as (NewUnit) const |
|
template<typename NewUnit > |
constexpr auto | coerce_in (NewUnit) const |
|
template<typename NewRep , typename NewUnit > |
constexpr auto | coerce_in (NewUnit) const |
|
template<typename U > |
Rep & | data_in (const QuantityMaker< U > &) |
|
template<typename U > |
Rep & | data_in (const U &) |
|
template<typename U > |
const Rep & | data_in (const QuantityMaker< U > &) const |
|
template<typename U > |
const Rep & | data_in (const U &) const |
|
template<typename OtherUnit , typename OtherRep > |
constexpr auto | operator* (Quantity< OtherUnit, OtherRep > q) const |
|
template<typename OtherUnit , typename OtherRep > |
constexpr auto | operator/ (Quantity< OtherUnit, OtherRep > q) const |
|
constexpr Quantity & | operator+= (Quantity other) |
|
constexpr Quantity & | operator-= (Quantity other) |
|
template<typename T > |
constexpr Quantity & | operator*= (T s) |
|
template<typename T > |
constexpr Quantity & | operator/= (T s) |
|
constexpr Quantity | operator+ () const |
|
constexpr Quantity | operator- () const |
|
template<typename U = UnitT, typename = std::enable_if_t<IsUnitlessUnit<U>::value>> |
constexpr | operator Rep () const |
|
template<typename T , std::enable_if_t< std::is_convertible< Quantity, CorrespondingQuantityT< T > >::value, int > = 0> |
constexpr | operator T () const |
|
|
struct | QuantityMaker< UnitT > |
|
constexpr bool | operator== (Quantity a, Quantity b) |
|
constexpr bool | operator!= (Quantity a, Quantity b) |
|
constexpr bool | operator< (Quantity a, Quantity b) |
|
constexpr bool | operator<= (Quantity a, Quantity b) |
|
constexpr bool | operator> (Quantity a, Quantity b) |
|
constexpr bool | operator>= (Quantity a, Quantity b) |
|
constexpr Quantity< UnitT, decltype(std::declval< RepT >()+std::declval< RepT >())> | operator+ (Quantity a, Quantity b) |
|
constexpr Quantity< UnitT, decltype(std::declval< RepT >() - std::declval< RepT >())> | operator- (Quantity a, Quantity b) |
|
template<typename T , typename = std::enable_if_t<std::is_arithmetic<T>::value>> |
constexpr auto | operator* (Quantity a, T s) |
|
template<typename T , typename = std::enable_if_t<std::is_arithmetic<T>::value>> |
constexpr auto | operator* (T s, Quantity a) |
|
template<typename T , typename = std::enable_if_t<std::is_arithmetic<T>::value>> |
constexpr auto | operator/ (Quantity a, T s) |
|
template<typename T , typename = std::enable_if_t<std::is_arithmetic<T>::value>> |
constexpr auto | operator/ (T s, Quantity a) |
|