29 #ifndef VC_TRAITS_HAS_NO_ALLOCATED_DATA_H_ 
   30 #define VC_TRAITS_HAS_NO_ALLOCATED_DATA_H_ 
   34 namespace Vc_VERSIONED_NAMESPACE
 
   73           typename std::remove_cv<typename std::remove_reference<T>::type>::type>
 
   79 template<
typename T, std::
size_t N> 
struct has_no_allocated_data_impl<T[N]> : 
public std::true_type {};
 
   80 template<
typename T> 
struct has_no_allocated_data_impl<T[]> : 
public std::true_type {};
 
   83 static_assert(has_no_allocated_data<
int[256]>::value, 
"");
 
   84 static_assert(has_no_allocated_data<
const int[256]>::value, 
"");
 
   85 static_assert(has_no_allocated_data<
volatile int[256]>::value, 
"");
 
   86 static_assert(has_no_allocated_data<
const volatile int[256]>::value, 
"");
 
   88 static_assert(has_no_allocated_data<
int[]>::value, 
"");
 
   89 static_assert(has_no_allocated_data<
int[2][2]>::value, 
"");
 
   91 static_assert(has_no_allocated_data<
const volatile std::array<int, 256> &>::value, 
"");
 
   92 static_assert(has_no_allocated_data<
const volatile std::array<int, 256>>::value, 
"");
 
   93 static_assert(has_no_allocated_data<
volatile std::array<int, 256> &>::value, 
"");
 
   94 static_assert(has_no_allocated_data<
volatile std::array<int, 256>>::value, 
"");
 
   95 static_assert(has_no_allocated_data<
const std::array<int, 256> &>::value, 
"");
 
   96 static_assert(has_no_allocated_data<
const std::array<int, 256>>::value, 
"");
 
   97 static_assert(has_no_allocated_data<std::array<int, 256>>::value, 
"");
 
   98 static_assert(has_no_allocated_data<std::array<int, 256> &&>::value, 
"");
 
   99 static_assert(!has_no_allocated_data<int*>::value, 
"");
 
  100 static_assert(!has_no_allocated_data<const int*>::value, 
"");
 
  101 static_assert(!has_no_allocated_data<const int *const>::value, 
"");
 
  102 static_assert(!has_no_allocated_data<int *const>::value, 
"");
 
  107 #endif // VC_TRAITS_HAS_NO_ALLOCATED_DATA_H_ 
Implements the has_no_allocated_data trait. 
Type trait that tells whether a container stores its data inside the object or inside allocated memor...