BloombergLP::bslmf::ForwardingRefType

This template metafunction has a member Type computed such that, for a specified t_TYPE parameter, a function with argument of t_TYPE can be called efficiently from another function (e.g., a wrapper) by declaring the corresponding parameter of the other wrapper as 'typename ForwardingRefType<t_TYPE>::Type'. The Type member is computed to minimize the number of expensive copies while forwarding the arguments as faithfully as possible.

Synopsis

Declared in <bslmf_forwardingreftype.h>

template<class t_TYPE>
class ForwardingRefType;

Type Aliases

NameDescription
TargetType The closest type used to "reconstitute" t_TYPE from ForwardingRefType<t_TYPE>::Type. This type may differ from t_TYPE through the addition of a reference.
Type The type that should be used to forward t_TYPE through a chain of function calls.