35 #ifndef _BLAZE_MATH_TYPETRAITS_ISPROXY_H_
36 #define _BLAZE_MATH_TYPETRAITS_ISPROXY_H_
63 template<
typename T >
68 typedef typename RemoveCV<T>::Type T2;
70 typedef char (&Yes)[1];
71 typedef char (&No) [2];
73 template<
typename PT,
typename RT >
74 static Yes test(
const Proxy<PT,RT>& );
76 static No test( ... );
83 enum { value = (
sizeof( test( create() ) ) ==
sizeof( Yes ) ) };
84 typedef typename SelectType< value, TrueType, FalseType >::Type Type;
115 template<
typename T >
116 struct IsProxy :
public IsProxyHelper<T>::Type
121 enum { value = IsProxyHelper<T>::value };
122 typedef typename IsProxyHelper<T>::Type Type;
Header file for the FalseType type/value trait base class.
Header file for the RemoveCV type trait.
Compile time check for proxy types.This type trait tests whether or not the given template parameter ...
Definition: IsProxy.h:116
Namespace of the Blaze C++ math library.
Definition: Blaze.h:57
Header file for the SelectType class template.
Header file for all forward declarations for proxies.
Header file for the TrueType type/value trait base class.