SUNphi
1.0
|
Defines the Tensor Components. More...
#include <metaprogramming/CRTP.hpp>
#include <metaprogramming/TypeTraits.hpp>
#include <system/SIMD.hpp>
#include <utility/String.hpp>
#include <utility/Unused.hpp>
Go to the source code of this file.
Classes | |
struct | SUNphi::BaseTensComp |
struct | SUNphi::ConstrainAreTensComps< Args > |
struct | SUNphi::TensComp< T, Size, MaxKnownSubMultiple > |
Macros | |
#define | DEFINE_TENS_COMP_CLASS(TYPE, N) |
Defines a TensComp , with name TYPE and max N. More... | |
#define | DEFINE_TENS_COMP(BINDER, TYPE, CONST_NAME, HMANY) |
#define | DEFINE_RW_CN_TENS_COMP(BINDER, TYPE, CONST_NAME, HMANY) |
Typedefs | |
template<typename T , typename Ret = void> | |
using | SUNphi::EnableIfIsTensComp = EnableIf< isTensComp< T >,Ret > |
template<typename T > | |
using | SUNphi::ConstrainIsTensComp = ConstrainIsBaseOf< BaseTensComp,T > |
template<typename T > | |
using | SUNphi::ConstrainIsNotTensComp = ConstrainIsNotBaseOf< BaseTensComp,T > |
Variables | |
template<typename T > | |
constexpr bool | SUNphi::isTensComp = isBaseOf<BaseTensComp ,T> |
constexpr int | SUNphi::DYNAMIC =-1 |
Constant used to instantiate a Dynamic-size TensComp. | |
Defines the Tensor Components.
Definition in file TensComp.hpp.
#define DEFINE_RW_CN_TENS_COMP | ( | BINDER, | |
TYPE, | |||
CONST_NAME, | |||
HMANY | |||
) |
Define row and TensComp
named Rw/CnTYPE
with maximal component N
Defines also a common binder-instantiator named BINDER, a TensKind
suffixing TYPE with Kind, and a constat holding the maximal value, named NCONST_NAME
Definition at line 91 of file TensComp.hpp.
#define DEFINE_TENS_COMP | ( | BINDER, | |
TYPE, | |||
CONST_NAME, | |||
HMANY | |||
) |
Define a TensComp
named TYPE
with maximal component N
Defines also a binder-instantiator named BINDER, a TensKind
suffixing TYPE with Kind, and a constat holding the maximal value, named NCONST_NAME
Definition at line 73 of file TensComp.hpp.
#define DEFINE_TENS_COMP_CLASS | ( | TYPE, | |
N | |||
) |
Defines a TensComp
, with name TYPE and max N.
Definition at line 61 of file TensComp.hpp.
using SUNphi::ConstrainIsNotTensComp = typedef ConstrainIsNotBaseOf<BaseTensComp ,T> |
Class forcing T not to inherits from BaseTensComp
Definition at line 20 of file TensComp.hpp.
using SUNphi::ConstrainIsTensComp = typedef ConstrainIsBaseOf<BaseTensComp ,T> |
Class forcing T to inherits from BaseTensComp
Definition at line 20 of file TensComp.hpp.
using SUNphi::EnableIfIsTensComp = typedef EnableIf< isTensComp <T> ,Ret> |
Provides the class itself if T is of the given type
Provides the class itself if T satisfies the condition
Definition at line 20 of file TensComp.hpp.
constexpr bool SUNphi::isTensComp = isBaseOf<BaseTensComp ,T> |
Expression which is true if T inherits from BaseTensComp
Definition at line 20 of file TensComp.hpp.