52 template <simd_concept simd_t,
size_t... I>
53 constexpr simd_t fill_impl(
typename simd_traits<simd_t>::scalar_type
const scalar, std::index_sequence<I...>)
55 return simd_t{((void)I, scalar)...};
60 template <simd_concept simd_t,
typename scalar_t, scalar_t... I>
61 constexpr simd_t iota_impl(scalar_t
const offset, std::integer_sequence<scalar_t, I...>)
63 return simd_t{
static_cast<scalar_t
>(offset + I)...};
83 template <simd_concept simd_t>
87 return detail::fill_impl<simd_t>(scalar, std::make_index_sequence<length>{});
99 template <simd_concept simd_t>
104 return detail::iota_impl<simd_t>(offset, std::make_integer_sequence<scalar_type, length>{});
constexpr simd_t iota(typename simd_traits< simd_t >::scalar_type const offset)
Fills a seqan3::simd::simd_type vector with the scalar values offset, offset+1, offset+2, ...
Definition: simd_algorithm.hpp:100
Contains seqan3::simd::simd_concept.
Contains seqan3::simd::simd_traits.
constexpr simd_t fill(typename simd_traits< simd_t >::scalar_type const scalar)
Fills a seqan3::simd::simd_type vector with a scalar value.
Definition: simd_algorithm.hpp:84
The main SeqAn3 namespace.
Definition: aligned_sequence_concept.hpp:58
IMPLEMENTATION_DEFINED scalar_type
The underlying type of a simd vector (is not defined if simd_t does not satisfy seqan3::simd::simd_co...
Definition: simd_traits.hpp:71
Definition: aligned_sequence_concept.hpp:288
seqan3::simd::simd_traits is the trait class that provides uniform interface to the properties of sim...
Definition: simd_traits.hpp:65