For a function prototype t_PROT of up to 9 arguments, provide types ForwardingTypeN which is the most convenient way to forward the Nth argument. * as the type of argument N itself (in the case of some fundamental types) * as a const reference (if TypeN is large and either by value or by const reference), or * as a reference to a modifiable object, if that's how the argument was passed in the first place. Note that nothing is passed as an rvalue reference, since if there are multiple slots (usually the case), the argument will be moved from by the first one and then unsuitable to be used by the ones following.
Declared in <bdlmt_signaler.h>
template<class t_PROT>
struct Signaler_ArgumentType;
Also provide ForwardingNotArg the type that forwards Signaler_NotArg.
| Name | Description |
|---|---|
ForwardingNotArg | Type for forwarding Signaler_NotArg. |
ForwardingType1 | Type for forwarding the 1st argument. |
ForwardingType2 | Type for forwarding the 2nd argument. |
ForwardingType3 | Type for forwarding the 3rd argument. |
ForwardingType4 | Type for forwarding the 4th argument. |
ForwardingType5 | Type for forwarding the 5th argument. |
ForwardingType6 | Type for forwarding the 6th argument. |
ForwardingType7 | Type for forwarding the 7th argument. |
ForwardingType8 | Type for forwarding the 8th argument. |
ForwardingType9 | Type for forwarding the 9th argument. |