BloombergLP::bslmf::InvokeResult_MemPtrArgQualifiers

This metafunction determines which cv qualifiers and reference qualifiers should be propagated from the first argument of invoke_result. This primary template is instantiated when t_ARG_TYPE is the same or is derived from t_MEMOF_CLASS. The constant k_IS_LVALUE is true iff t_ARG_TYPE is an lvalue reference; the constant k_IS_CONST is true iff t_ARG_TYPE is const-qualified; and the constant k_IS_VOLATILE is true iff t_ARG_TYPE is volatile-qualified.

Synopsis

Declared in <bslmf_invokeresult.h>

template<
    class t_MEMOF_CLASS,
    class t_ARG_TYPE,
    bool t_IS_DERIVED = bsl::is_convertible<typename bsl::decay<t_ARG_TYPE>::type *, typename bsl::decay<t_MEMOF_CLASS>::type *>::value>
struct InvokeResult_MemPtrArgQualifiers;

Enums

NameDescription
Unnamed enum Qualifier constants inferred from the first invoke argument.

Specializations

NameDescription
InvokeResult_MemPtrArgQualifiers<t_MEMOF_CLASS, t_ARG_TYPE, false> This metafunction determines which cv qualifiers and reference qualifiers should be propagated from the first argument of invoke_result.