BloombergLP::bslmf::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.

Synopsis

Declared in <bslmf_invokeresult.h>

template<
    class t_MEMOF_CLASS,
    class t_ARG_TYPE>
struct InvokeResult_MemPtrArgQualifiers<t_MEMOF_CLASS, t_ARG_TYPE, false>
    : /* implementation-defined */

Description

This specialization is instantiated when t_ARG_TYPE is not derived from t_MEMOF_CLASS and is assumed to be a pointer or smart pointer type. If type A is the result of dereferencing an object of type t_ARG_TYPE, then the constant k_IS_LVALUE is true iff A is an lvalue reference; the constant k_IS_CONST is true iff A is a const-qualified reference; and the constant k_IS_VOLATILE is true iff A is a volatile-qualified reference.

Base Classes

NameDescription
/* implementation-defined */Utility metaprogramming functions inherited by other metaprogramming classes.

Types

NameDescription
AnyLvalue Type convertible from any lvalue type. Used for overload resolution in metafunctions.
AnyRvalue Type convertible from any rvalue type. Used for overload resolution in metafunctions.

Enums

Name
Unnamed enum

Static Member Functions

NameDescription
checkConst checkConst overloads
checkLvalue checkLvalue overloads
checkVolatile checkVolatile overloads
myDeclval Return a reference to the specified t_SOME_TYPE template parameter type; if t_SOME_TYPE is an rvalue, then the returned reference is an rvalue reference. This function is declared but not defined and is intended to be called in an unevaluated context. Because there is no definition, the available constructors for t_SOME_TYPE are irrelevant.
uncv uncv overloads
unpoint unpoint overloads