BloombergLP::bsls::ProtocolTest_IsAbstract

This class template is a compile-time meta-function, parameterized with type T, the output of which is value, which will be true if T is abstract and false otherwise. On some platforms, the IsAbstract test makes use of the fact that a type 'an array of objects of an abstract type' (e.g., T[1]) cannot exist. Note that it is only an approximation, because this is also true for an incomplete type. But, this approximation is good enough for the purpose of testing protocol classes. On certain other platforms, the IsAbstract test will make use of the fact that abstract types cannot be returned. This approximation also has issues, noted below, but is also good enough for the purpose of testing protocol classes.

Synopsis

Declared in <bsls_protocoltest.h>

template<class T>
struct ProtocolTest_IsAbstract;

Enums

NameDescription
Unnamed enum Compile-time abstractness result for T.