[#mp_units-operator_star-000] = xref:mp_units.adoc[mp_units]::operator* :relfileprefix: ../ :mrdocs: Multiplication operators == Synopses Declared in `<mp‐units/framework/quantity.h>` [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<xref:mp_units/AssociatedUnit.adoc[AssociatedUnit] U1> [[nodiscard]] consteval /* implementation-defined */ xref:mp_units/operator_star-02b.adoc[operator*]( U1 lhs, xref:mp_units/reference.adoc[reference] rhs); ---- [.small]#xref:mp_units/operator_star-02b.adoc[_» more..._]# [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template<xref:mp_units/AssociatedUnit.adoc[AssociatedUnit] U2> [[nodiscard]] consteval /* implementation-defined */ xref:mp_units/operator_star-0f.adoc[operator*]( xref:mp_units/reference.adoc[reference] lhs, U2 rhs); ---- [.small]#xref:mp_units/operator_star-0f.adoc[_» more..._]# [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< xref:mp_units/Reference.adoc[Reference] R, typename Q> requires Quantity<std::remove_cvref_t<Q>> constexpr auto xref:mp_units/operator_star-0b.adoc[operator*]( R lhs, Q&& q) = delete; ---- [.small]#xref:mp_units/operator_star-0b.adoc[_» more..._]# [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< xref:mp_units/Reference.adoc[Reference] R, typename Rep> requires RepresentationOf<std::remove_cvref_t<Rep>, get_quantity_spec(R{})> constexpr auto xref:mp_units/operator_star-029.adoc[operator*]( R lhs, Rep&& rhs) = delete; ---- [.small]#xref:mp_units/operator_star-029.adoc[_» more..._]# [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename Q2, typename U2> [[nodiscard]] consteval /* implementation-defined */ xref:mp_units/operator_star-05.adoc[operator*]( xref:mp_units/reference.adoc[reference] lhs, xref:mp_units/reference.adoc[reference<Q2, U2>] rhs); ---- [.small]#xref:mp_units/operator_star-05.adoc[_» more..._]# [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< std::derived_from<quantity> Q, typename Value> requires (!Quantity<Value>) && (!Reference<Value>) && detail::InvokeResultOf<quantity_spec, std::multiplies<>, rep, const Value&> [[nodiscard]] constexpr xref:mp_units/QuantityOf.adoc[QuantityOf<quantity_spec>] auto xref:mp_units/operator_star-002.adoc[operator*]( Q const& q, Value const& val); ---- [.small]#xref:mp_units/operator_star-002.adoc[_» more..._]# [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename Value, std::derived_from<quantity> Q> requires (!Quantity<Value>) && (!Reference<Value>) && detail::InvokeResultOf<quantity_spec, std::multiplies<>, const Value&, rep> [[nodiscard]] constexpr xref:mp_units/QuantityOf.adoc[QuantityOf<quantity_spec>] auto xref:mp_units/operator_star-0a.adoc[operator*]( Value const& val, Q const& q); ---- [.small]#xref:mp_units/operator_star-0a.adoc[_» more..._]# [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< std::derived_from<quantity> Q, auto R2, typename Rep2> requires detail::InvocableQuantities<std::multiplies<>, quantity, quantity<R2, Rep2>> [[nodiscard]] constexpr xref:mp_units/Quantity.adoc[Quantity] auto xref:mp_units/operator_star-04.adoc[operator*]( Q const& lhs, xref:mp_units/quantity-01.adoc[quantity<R2, Rep2>] const& rhs); ---- [.small]#xref:mp_units/operator_star-04.adoc[_» more..._]# [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename FwdQ, xref:mp_units/Reference.adoc[Reference] R, xref:mp_units/Quantity.adoc[Quantity] Q = std::remove_cvref_t<FwdQ>> [[nodiscard]] constexpr xref:mp_units/Quantity.adoc[Quantity] auto xref:mp_units/operator_star-022.adoc[operator*]( FwdQ&& q, R rhs); ---- [.small]#xref:mp_units/operator_star-022.adoc[_» more..._]# Multiplication operator [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename FwdRep, xref:mp_units/Reference.adoc[Reference] R, xref:mp_units/RepresentationOf.adoc[RepresentationOf<get_quantity_spec(R{})>] Rep = std::remove_cvref_t<FwdRep>> requires (!detail::OffsetUnit<decltype(get_unit(R{}))>) [[nodiscard]] constexpr xref:mp_units/quantity-01.adoc[quantity<R{}, Rep>] xref:mp_units/operator_star-009.adoc[operator*]( FwdRep&& lhs, R r); ---- [.small]#xref:mp_units/operator_star-009.adoc[_» more..._]# [source,cpp,subs="verbatim,replacements,macros,-callouts"] ---- template< typename FwdRep, xref:mp_units/Reference.adoc[Reference] R, xref:mp_units/RepresentationOf.adoc[RepresentationOf<get_quantity_spec(R{})>] Rep = std::remove_cvref_t<FwdRep>> requires detail::OffsetUnit<decltype(get_unit(R{}))> [[deprecated]] constexpr auto xref:mp_units/operator_star-09.adoc[operator*]( FwdRep&& lhs, R r); ---- [.small]#xref:mp_units/operator_star-09.adoc[_» more..._]# [.small]#Created with https://www.mrdocs.com[MrDocs]#