blaze::IsEmpty< T > Struct Template Reference

Compile time type check.This class tests whether the given template parameter is an empty class type, i.e. a type without member data and virtual functions. If it is an empty class type, the value member enumeration is set to 1, the nested type definition Type is TrueType, and the class derives from TrueType. Otherwise value is set to 0, Type is FalseType, and the class derives from FalseType. More...

#include <IsEmpty.h>

Inherits Type< T >.

Detailed Description

template<typename T>
struct blaze::IsEmpty< T >

Compile time type check.

This class tests whether the given template parameter is an empty class type, i.e. a type without member data and virtual functions. If it is an empty class type, the value member enumeration is set to 1, the nested type definition Type is TrueType, and the class derives from TrueType. Otherwise value is set to 0, Type is FalseType, and the class derives from FalseType.

class A {};
class B { int i; };
blaze::IsEmpty<A>::value // Evaluates to 1
blaze::IsEmpty<A volatile>::Type // Results in TrueType
blaze::IsEmpty<A const> // Is derived from TrueType
blaze::IsEmpty<int>::value // Evaluates to 0
blaze::IsEmpty<std::string>::Type // Results in FalseType
blaze::IsEmpty<B> // Is derived from FalseType

The documentation for this struct was generated from the following file: