49#ifndef SACADO_FAD_VIEWFADTRAITS_HPP
50#define SACADO_FAD_VIEWFADTRAITS_HPP
54#ifdef SACADO_NEW_FAD_DESIGN_IS_DEFAULT
65 template <
typename T,
unsigned,
unsigned,
typename>
class ViewFad;
75 template <
typename ValueT,
unsigned Size,
unsigned Str
ide,
typename Base>
76 struct ScalarType< Fad::ViewFad<ValueT,Size,Stride,Base> > {
81 template <
typename ValueT,
unsigned Size,
unsigned Str
ide,
typename Base>
82 struct ValueType< Fad::ViewFad<ValueT,Size,Stride,Base> > {
87 template <
typename ValueT,
unsigned Size,
unsigned Str
ide,
typename Base>
88 struct IsADType< Fad::ViewFad<ValueT,Size,Stride,Base> > {
93 template <
typename ValueT,
unsigned Size,
unsigned Str
ide,
typename Base>
95 static const bool value =
false;
99 template <
typename ValueT,
unsigned Size,
unsigned Str
ide,
typename Base>
105 template <
typename ValueT,
unsigned Size,
unsigned Str
ide,
typename Base>
106 struct Value< Fad::ViewFad<ValueT,Size,Stride,Base> > {
114 template <
typename ValueT,
unsigned Size,
unsigned Str
ide,
typename Base>
124 template <
typename ValueT,
unsigned Size,
unsigned Str
ide,
typename Base>
127 return std::string(
"Sacado::Fad::ViewFad< ") +
132 template <
typename ValueT,
unsigned Size,
unsigned Str
ide,
typename Base>
133 struct IsEqual< Fad::ViewFad<ValueT,Size,Stride,Base> > {
137 return x.isEqualTo(
y);
142 template <
typename ValueT,
unsigned Size,
unsigned Str
ide,
typename Base>
#define SACADO_INLINE_FUNCTION
#define SACADO_VFAD_PROMOTE_SPEC(NS)
Base template specification for IsADType.
static SACADO_INLINE_FUNCTION bool eval(const Fad::ViewFad< ValueT, Size, Stride, Base > &x, const Fad::ViewFad< ValueT, Size, Stride, Base > &y)
Base template specification for testing equivalence.
Base template specification for IsScalarType.
Base template specification for IsSimdType.
Base template specification for testing whether type is statically sized.
Fad::ViewFad< ValueT, Size, Stride, Base >::ScalarT type
Base template specification for ScalarType.
ValueType< Fad::ViewFad< ValueT, Size, Stride, Base > >::type value_type
static SACADO_INLINE_FUNCTION const scalar_type & eval(const Fad::ViewFad< ValueT, Size, Stride, Base > &x)
ScalarType< Fad::ViewFad< ValueT, Size, Stride, Base > >::type scalar_type
Base template specification for ScalarValue.
static SACADO_INLINE_FUNCTION const T & eval(const T &x)
static std::string eval()
Base template specification for string names of types.
static std::string eval()
Base template specification for ValueType.
static SACADO_INLINE_FUNCTION const value_type & eval(const Fad::ViewFad< ValueT, Size, Stride, Base > &x)
ValueType< Fad::ViewFad< ValueT, Size, Stride, Base > >::type value_type
Base template specification for Value.