Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
blaze
math
typetraits
CanAlias.h
Go to the documentation of this file.
1
//=================================================================================================
20
//=================================================================================================
21
22
#ifndef _BLAZE_MATH_TYPETRAITS_CANALIAS_H_
23
#define _BLAZE_MATH_TYPETRAITS_CANALIAS_H_
24
25
26
//*************************************************************************************************
27
// Includes
28
//*************************************************************************************************
29
30
#include <
blaze/util/FalseType.h
>
31
#include <
blaze/util/SelectType.h
>
32
#include <
blaze/util/TrueType.h
>
33
34
35
namespace
blaze {
36
37
//=================================================================================================
38
//
39
// CLASS DEFINITION
40
//
41
//=================================================================================================
42
43
//*************************************************************************************************
48
template
<
typename
T >
49
struct
CanAliasHelper
50
{
51
//**********************************************************************************************
52
enum
{ value = T::canAlias };
53
typedef
typename
SelectType<value,TrueType,FalseType>::Type Type;
54
//**********************************************************************************************
55
};
57
//*************************************************************************************************
58
59
60
//*************************************************************************************************
70
template
<
typename
T >
71
struct
CanAlias
:
public
CanAliasHelper<T>::Type
72
{
73
public
:
74
//**********************************************************************************************
76
enum
{ value = CanAliasHelper<T>::value };
77
typedef
typename
CanAliasHelper<T>::Type Type;
79
//**********************************************************************************************
80
};
81
//*************************************************************************************************
82
83
}
// namespace blaze
84
85
#endif
Generated on Sun Jan 20 2013 08:14:38 by
1.8.3