Lumiera  0.pre.03
»edit your freedom«
_DetectNested_TypeResult< TY > Class Template Reference

#include "lib/meta/util.hpp"

Description

template<typename TY>
class lib::meta::anonymous_namespace{util.hpp}::_DetectNested_TypeResult< TY >

helper to detect a nested field TY::type or `TY::Type.

Remarks
need to use this indirect detection method, since some of the type traits from the standard library (notably std::common_type) use a multiple layer deep indirect definition, which fails to be selected on a simple direct template specialisation.

Definition at line 119 of file meta/util.hpp.

Static Public Attributes

static const bool value = (sizeof(Yes_t)==sizeof(check<TY>(0)))
 

Static Private Member Functions

template<class ZZ >
static Yes_t check (typename ZZ::type *)
 
template<class X >
static Yes_t check (typename X::Type *)
 
template<class >
static No_t check (...)
 
+ Collaboration diagram for _DetectNested_TypeResult< TY >:

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