Blaze 3.9
blaze::IntegralConstant< T, N > Struct Template Reference

Generic wrapper for a compile time constant integral value. More...

#include <IntegralConstant.h>

Inherits std::integral_constant< T, N >.

Inherited by blaze::HasSize< T, 1UL >, blaze::HasSize< T, 2UL >, blaze::HasSize< T, 4UL >, blaze::HasSize< T, 8UL >, blaze::All< TypeTrait, T1, T2, Ts >, blaze::AlwaysFalse< T >, blaze::AlwaysTrue< T >, blaze::Any< TypeTrait, T1, T2, Ts >, blaze::Check< C >, blaze::HasConstDataAccess< T >, blaze::HasMutableDataAccess< T >, blaze::HasSIMDAbs< T >, blaze::HasSIMDAcos< T >, blaze::HasSIMDAcosh< T >, blaze::HasSIMDAdd< T1, T2, typename >, blaze::HasSIMDAsin< T >, blaze::HasSIMDAsinh< T >, blaze::HasSIMDAtan< T >, blaze::HasSIMDAtan2< T1, T2 >, blaze::HasSIMDAtanh< T >, blaze::HasSIMDBitand< T1, T2 >, blaze::HasSIMDBitor< T1, T2 >, blaze::HasSIMDBitxor< T1, T2 >, blaze::HasSIMDCbrt< T >, blaze::HasSIMDCeil< T >, blaze::HasSIMDConj< T >, blaze::HasSIMDCos< T >, blaze::HasSIMDCosh< T >, blaze::HasSIMDDiv< T1, T2, typename >, blaze::HasSIMDEqual< T1, T2, typename >, blaze::HasSIMDErf< T >, blaze::HasSIMDErfc< T >, blaze::HasSIMDExp< T >, blaze::HasSIMDExp10< T >, blaze::HasSIMDExp2< T >, blaze::HasSIMDFloor< T >, blaze::HasSIMDHypot< T1, T2 >, blaze::HasSIMDInvCbrt< T >, blaze::HasSIMDInvSqrt< T >, blaze::HasSIMDLGamma< T >, blaze::HasSIMDLog< T >, blaze::HasSIMDLog10< T >, blaze::HasSIMDLog1p< T >, blaze::HasSIMDLog2< T >, blaze::HasSIMDMax< T1, T2, typename >, blaze::HasSIMDMin< T1, T2, typename >, blaze::HasSIMDMult< T1, T2, typename >, blaze::HasSIMDPow< T1, T2 >, blaze::HasSIMDRound< T >, blaze::HasSIMDShiftLI< T >, blaze::HasSIMDShiftLV< T1, T2 >, blaze::HasSIMDShiftRI< T >, blaze::HasSIMDShiftRV< T1, T2 >, blaze::HasSIMDSign< T >, blaze::HasSIMDSin< T >, blaze::HasSIMDSinh< T >, blaze::HasSIMDSqrt< T >, blaze::HasSIMDSub< T1, T2, typename >, blaze::HasSIMDTan< T >, blaze::HasSIMDTanh< T >, blaze::HasSIMDTrunc< T >, blaze::HasSize< T, S >, blaze::HaveSameSize< T1, T2 >, blaze::IsAdaptor< T >, blaze::IsAligned< T >, blaze::IsArithmetic< T >, blaze::IsArray< T >, blaze::IsAssignable< T, U >, blaze::IsBLASCompatible< T >, blaze::IsBand< T >, blaze::IsBaseOf< Base, Derived >, blaze::IsBoolean< T >, blaze::IsBuiltin< T >, blaze::IsCharacter< T >, blaze::IsClass< T >, blaze::IsColumn< T >, blaze::IsColumns< T >, blaze::IsCommutative< T1, T2, typename >, blaze::IsComplex< T >, blaze::IsComplexDouble< T >, blaze::IsComplexFloat< T >, blaze::IsComputation< T >, blaze::IsConst< T >, blaze::IsConstructible< T, Args >, blaze::IsContiguous< T >, blaze::IsConvertible< From, To >, blaze::IsCopyAssignable< T >, blaze::IsCopyConstructible< T >, blaze::IsCustom< T >, blaze::IsDefaultConstructible< T >, blaze::IsDestructible< T >, blaze::IsDiagonal< T >, blaze::IsDouble< T >, blaze::IsElements< T >, blaze::IsEmpty< T >, blaze::IsEnum< T >, blaze::IsEven< N >, blaze::IsFloat< T >, blaze::IsFloatingPoint< T >, blaze::IsGeneral< T >, blaze::IsIdentity< T >, blaze::IsInitializer< T >, blaze::IsInteger< T >, blaze::IsIntegral< T >, blaze::IsInvertible< T >, blaze::IsLValueReference< T >, blaze::IsLong< T >, blaze::IsLongDouble< T >, blaze::IsMoveAssignable< T >, blaze::IsMoveConstructible< T >, blaze::IsMultipleOf< M, N >, blaze::IsNothrowAssignable< T, U >, blaze::IsNothrowConstructible< T, Args >, blaze::IsNothrowCopyAssignable< T >, blaze::IsNothrowCopyConstructible< T >, blaze::IsNothrowDefaultConstructible< T >, blaze::IsNothrowDestructible< T >, blaze::IsNothrowMoveAssignable< T >, blaze::IsNothrowMoveConstructible< T >, blaze::IsNumeric< T >, blaze::IsObject< T >, blaze::IsOdd< N >, blaze::IsOperation< T >, blaze::IsOpposedView< T >, blaze::IsPadded< T >, blaze::IsPaddingEnabled< T >, blaze::IsPod< T >, blaze::IsPointer< T >, blaze::IsPowerOf< B, N >, blaze::IsRValueReference< T >, blaze::IsReference< T >, blaze::IsResizable< T >, blaze::IsRestricted< T >, blaze::IsRow< T >, blaze::IsRows< T >, blaze::IsSIMDCombinable< T1, T2, Ts >, blaze::IsSIMDEnabled< T, Args >, blaze::IsSMPAssignable< T >, blaze::IsSame< A, B >, blaze::IsScalar< T >, blaze::IsShort< T >, blaze::IsSigned< T >, blaze::IsSparseElement< T >, blaze::IsSquare< T >, blaze::IsStatic< T >, blaze::IsStrictlySame< A, B >, blaze::IsStrictlyTriangular< T >, blaze::IsSubmatrix< T >, blaze::IsSubvector< T >, blaze::IsTemporary< T >, blaze::IsTransformation< T >, blaze::IsTriangular< T >, blaze::IsUniTriangular< T >, blaze::IsUnion< T >, blaze::IsUnsigned< T >, blaze::IsValid< T >, blaze::IsVectorizable< T >, blaze::IsVoid< T >, blaze::IsVolatile< T >, blaze::RequiresEvaluation< T >, blaze::StorageOrder< T >, blaze::TransposeFlag< T >, blaze::YieldsDiagonal< OP, MT, MTs >, blaze::YieldsHermitian< OP, MT, MTs >, blaze::YieldsIdentity< OP, MT, MTs >, blaze::YieldsLower< OP, MT, MTs >, blaze::YieldsStrictlyLower< OP, MT, MTs >, blaze::YieldsStrictlyTriangular< OP, MT, MTs >, blaze::YieldsStrictlyUpper< OP, MT, MTs >, blaze::YieldsSymmetric< OP, MT, MTs >, blaze::YieldsTriangular< OP, MT, MTs >, blaze::YieldsUniLower< OP, MT, MTs >, blaze::YieldsUniTriangular< OP, MT, MTs >, blaze::YieldsUniUpper< OP, MT, MTs >, blaze::YieldsUniform< OP, T, Ts >, blaze::YieldsUpper< OP, MT, MTs >, and blaze::YieldsZero< OP, T, Ts >.

Detailed Description

template<typename T, T N>
struct blaze::IntegralConstant< T, N >

Generic wrapper for a compile time constant integral value.

The IntegralConstant class template represents a generic wrapper for a compile time constant integral value. The value of an IntegralConstant can be accessed via the nested value (which is guaranteed to be of type T), the type can be accessed via the nested type definition ValueType.

using namespace blaze;
IntegralConstant<int,3>::value // Evaluates to 3
IntegralConstant<long,5L>::ValueType // Results in long

The documentation for this struct was generated from the following file: