A type C
meets the ProConvention requirements of a type P
if C
meets the ProBasicConvention requirements, and the following expressions are well-formed and have the specified semantics.
Expressions | Semantics |
---|---|
typename C::overload_types |
A tuple-like type that contains one or more distinct types Os . Each type O in Os shall meet the ProOverload requirements, and- when C::is_direct is true , typename C::dispatch_type shall meet the ProDispatch requirements of P and O , - or otherwise, when C::is_direct is false , let QP be a qualified reference type of P with the cv ref qualifiers defined by O (QP is an lvalue reference type if O does not define a ref qualifier), qp be a value of QP , *std::forward<QP>(qp) shall be well-formed, and typename C::dispatch_type shall meet the ProDispatch requirements of decltype(*std::forward<QP>(qp)) and O . |