3#ifndef DUNE_COMMON_SIMD_IO_HH
4#define DUNE_COMMON_SIMD_IO_HH
34 template<
class Stream,
35 class = std::enable_if_t<std::is_base_of<std::ios_base,
39 const char *sep =
"<";
50 template<class V, class = std::enable_if_t<Simd::lanes<V>() != 1> >
56 template<class V, class = std::enable_if_t<Simd::lanes<V>() == 1> >
Traits for type conversions and type information.
Utilities for reduction like operations on ranges.
static StaticIntegralRange< T, to, from > range(std::integral_constant< T, from >, std::integral_constant< T, to >) noexcept
Definition rangeutilities.hh:300
constexpr AutonomousValue< T > autoCopy(T &&v)
Autonomous copy of an expression's value for use in auto type deduction.
Definition typetraits.hh:642
auto io(const V &v)
construct a stream inserter
Definition io.hh:106
auto vio(const V &v)
construct a stream inserter
Definition io.hh:90
constexpr std::size_t lanes()
Number of lanes in a SIMD type.
Definition simd/interface.hh:305
decltype(auto) lane(std::size_t l, V &&v)
Extract an element of a SIMD type.
Definition simd/interface.hh:324
typename Overloads::ScalarType< std::decay_t< V > >::type Scalar
Element type of some SIMD type.
Definition simd/interface.hh:235
Dune namespace.
Definition alignedallocator.hh:13
Inserter< V > io(const V &v)
Definition io.hh:51
Inserter(const T &value)
Definition io.hh:32
friend Stream & operator<<(Stream &out, const Inserter &ins)
Definition io.hh:37
Include file for users of the SIMD abstraction layer.