35#ifndef _BLAZE_MATH_TRAITS_REPEATTRAIT_H_
36#define _BLAZE_MATH_TRAITS_REPEATTRAIT_H_
58template<
typename,
size_t... >
struct RepeatTrait;
59template<
typename,
size_t,
size_t,
size_t,
typename =
void >
struct RepeatTraitEval1;
60template<
typename,
size_t,
size_t,
size_t,
typename =
void >
struct RepeatTraitEval2;
67template<
size_t R0,
size_t R1,
size_t R2,
typename T >
68auto evalRepeatTrait(
const volatile T& ) -> RepeatTraitEval1<T,R0,R1,R2>;
70template<
size_t R0,
size_t R1,
typename T >
71auto evalRepeatTrait(
const volatile T& ) -> RepeatTraitEval1<T,R0,R1,inf>;
73template<
size_t R0,
typename T >
74auto evalRepeatTrait(
const volatile T& ) -> RepeatTraitEval1<T,R0,inf,inf>;
77auto evalRepeatTrait(
const volatile T& ) -> RepeatTraitEval1<T,inf,inf,inf>;
131 :
public decltype( evalRepeatTrait<CRAs...>( std::declval<T&>() ) )
165struct RepeatTraitEval1
166 :
public RepeatTraitEval2<T,R0,R1,R2>
182struct RepeatTraitEval2
Numerical infinity for built-in data types.
typename RepeatTrait< T, CRAs... >::Type RepeatTrait_t
Auxiliary alias declaration for the RepeatTrait type trait.
Definition: RepeatTrait.h:151
Base template for the RepeatTrait class.
Definition: RepeatTrait.h:132
Header file for basic type definitions.