BloombergLP::bslstl::Function_IsReferenceCompatible<FROM_TYPE, TO_TYPE const>

Partial specialization of Function_IsReferenceCompatible for const TO_TYPE.

Synopsis

Declared in <bslstl_function_isreferencecompatible.h>

template<
    class FROM_TYPE,
    class TO_TYPE>
struct Function_IsReferenceCompatible<FROM_TYPE, TO_TYPE const>
    : Function_IsReferenceCompatible<bsl::remove_const<FROM_TYPE>::type, TO_TYPE>

Description

Partial specialization of Function_IsReferenceCompatible for TO_TYPE being const. The evaluation is forwarded to other specializations after stripping the const qualifiers. Note that if FROM_TYPE is const and TO_TYPE is mutable, this partial specialization will not be selected and the resulting evaluation will yield false_type, reflecting the fact that a reference to const type cannot be substituted with a reference to mutable type.

Base Classes

NameDescription
Function_IsReferenceCompatible<bsl::remove_const<FROM_TYPE>::type, TO_TYPE>Metafunction that is true_type if a reference to FROM_TYPE can substitute for a reference to TO_TYPE.