dune-common  2.7.0
base.hh
Go to the documentation of this file.
1 #ifndef DUNE_COMMON_SIMD_BASE_HH
2 #define DUNE_COMMON_SIMD_BASE_HH
3 
90 namespace Dune {
91  namespace Simd {
92 
95 
110  namespace Overloads {
111 
114 
116 
179  template<unsigned i, bool = true>
180  struct ADLTag;
181 
182  template<unsigned i>
183  struct ADLTag<i> : ADLTag<i-1> {};
184 
185  template<>
186  struct ADLTag<0> {};
187 
189 
193  template<class V, class SFINAETag = void>
194  struct ScalarType;
195 
197 
201  template<class S, class V, class SFINAETag = void>
202  struct RebindType;
203 
205 
209  template<class V, class SFINAETag = void>
210  struct LaneCount;
211 
213 
214  } // namespace Overloads
215  } // namespace Simd
216 } // namespace Dune
217 
218 #endif // DUNE_COMMON_SIMD_BASE_HH
Dune::Simd::Overloads::LaneCount
should be derived from a Dune::index_constant
Definition: base.hh:210
Dune::Simd::Overloads::ScalarType
should have a member type type
Definition: base.hh:194
Dune::Simd::Overloads::ADLTag
Tag used to force late-binding lookup in Dune::Simd::Overloads.
Definition: base.hh:180
Dune::Simd::Overloads::RebindType
should have a member type type
Definition: base.hh:202
Dune
Dune namespace.
Definition: alignedallocator.hh:13