35#ifndef _BLAZE_MATH_TRAITS_EXPANDTRAIT_H_
36#define _BLAZE_MATH_TRAITS_EXPANDTRAIT_H_
58template<
typename,
size_t... >
struct ExpandTrait;
59template<
typename,
size_t,
typename =
void >
struct ExpandTraitEval1;
60template<
typename,
size_t,
typename =
void >
struct ExpandTraitEval2;
67template<
size_t E,
typename T >
68auto evalExpandTrait(
const volatile T& ) -> ExpandTraitEval1<T,E>;
71auto evalExpandTrait(
const volatile T& ) -> ExpandTraitEval1<T,inf>;
125 :
public decltype( evalExpandTrait<CEAs...>( std::declval<T&>() ) )
157struct ExpandTraitEval1
158 :
public ExpandTraitEval2<T,E>
172struct ExpandTraitEval2
Numerical infinity for built-in data types.
typename ExpandTrait< T, CEAs... >::Type ExpandTrait_t
Auxiliary alias declaration for the ExpandTrait type trait.
Definition: ExpandTrait.h:145
Base template for the ExpandTrait class.
Definition: ExpandTrait.h:126
Header file for basic type definitions.