34template < 
typename T >
 
   57template < 
typename T >
 
   61    return __PRETTY_FUNCTION__;
 
   62    #elif defined(__GNUC__) 
   63    return __PRETTY_FUNCTION__;
 
   64    #elif defined(_MSC_VER) 
   67        #error "Unsupported compiler" 
   77    return WrappedTypeName< TypeNameProber >().find(TypeName< TypeNameProber >());
 
   94template < 
typename T >
 
   97    static const std::string wrappedName = WrappedTypeName< T >();
 
  100    static const std::size_t typeNameLength = wrappedName.length() - prefixLength - suffixLength;
 
  101    return wrappedName.substr(
 
  113template < 
typename T >
 
  116    return TypeName< T >();
 
const std::string TypeName()
static const std::size_t WrappedTypeNamePrefixLength()
static const std::size_t WrappedTypeNameSuffixLength()
const std::string TypeName< void >()
static const std::string WrappedTypeName()