filter_tuple_by_modulo< Tuple, Stride, Offset > Struct Template Reference

filter_tuple_by_modulo&lt; Tuple, Stride, Offset &gt; Struct Template Reference#

Composable Kernel: ck::util::filter_tuple_by_modulo< Tuple, Stride, Offset > Struct Template Reference
ck::util::filter_tuple_by_modulo< Tuple, Stride, Offset > Struct Template Reference

#include <filter_tuple.hpp>

Classes

struct  make_filtered_tuple_type_impl
struct  make_filtered_tuple_type_impl< T, std::index_sequence< Is... > >

Public Types

using filtered_indices = decltype(to_index(std::make_index_sequence<new_size>{}))
using type = typename make_filtered_tuple_type_impl<Tuple, filtered_indices>::type

Static Public Member Functions

template<std::size_t... Is>
static constexpr auto to_index (std::index_sequence< Is... >)

Static Public Attributes

static constexpr int new_size = (std::tuple_size_v<Tuple> + Stride - Offset - 1) / Stride

Member Typedef Documentation

◆ filtered_indices

template<typename Tuple, std::size_t Stride, std::size_t Offset>
using ck::util::filter_tuple_by_modulo< Tuple, Stride, Offset >::filtered_indices = decltype(to_index(std::make_index_sequence<new_size>{}))

◆ type

template<typename Tuple, std::size_t Stride, std::size_t Offset>
using ck::util::filter_tuple_by_modulo< Tuple, Stride, Offset >::type = typename make_filtered_tuple_type_impl<Tuple, filtered_indices>::type

Member Function Documentation

◆ to_index()

template<typename Tuple, std::size_t Stride, std::size_t Offset>
template<std::size_t... Is>
constexpr auto ck::util::filter_tuple_by_modulo< Tuple, Stride, Offset >::to_index ( std::index_sequence< Is... > )
inlinestaticconstexpr

Member Data Documentation

◆ new_size

template<typename Tuple, std::size_t Stride, std::size_t Offset>
int ck::util::filter_tuple_by_modulo< Tuple, Stride, Offset >::new_size = (std::tuple_size_v<Tuple> + Stride - Offset - 1) / Stride
staticconstexpr

The documentation for this struct was generated from the following file: