sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq > Struct Template Reference

sorted_sequence_uniquify_impl&lt; RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq &gt; Struct Template Reference#

Composable Kernel: ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq > Struct Template Reference
ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq > Struct Template Reference

#include <sequence.hpp>

Public Types

using new_remain_values = decltype(RemainValues::pop_front())
using new_remain_ids = decltype(RemainIds::pop_front())
using new_uniquified_values
using new_uniquified_ids
using uniquify
using uniquified_values = typename uniquify::uniquified_values
using uniquified_ids = typename uniquify::uniquified_ids

Static Public Attributes

static constexpr index_t current_value = RemainValues::front()
static constexpr index_t current_id = RemainIds::front()
static constexpr bool is_unique_value = (current_value != UniquifiedValues::back())

Member Typedef Documentation

◆ new_remain_ids

template<typename Values, typename Less, typename Equal>
template<typename RemainValues, typename RemainIds, typename UniquifiedValues, typename UniquifiedIds, typename Eq>
using ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq >::new_remain_ids = decltype(RemainIds::pop_front())

◆ new_remain_values

template<typename Values, typename Less, typename Equal>
template<typename RemainValues, typename RemainIds, typename UniquifiedValues, typename UniquifiedIds, typename Eq>
using ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq >::new_remain_values = decltype(RemainValues::pop_front())

◆ new_uniquified_ids

template<typename Values, typename Less, typename Equal>
template<typename RemainValues, typename RemainIds, typename UniquifiedValues, typename UniquifiedIds, typename Eq>
using ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq >::new_uniquified_ids
Initial value:
typename std::conditional<is_unique_value,
decltype(UniquifiedIds::push_back(number<current_id>{})),
UniquifiedIds>::type
constant< v > number
Definition tile/core/numeric/integral_constant.hpp:37
static constexpr bool is_unique_value
Definition utility/sequence.hpp:554
typename uniquify::uniquified_values type
Definition tile/core/container/sequence.hpp:662

◆ new_uniquified_values

template<typename Values, typename Less, typename Equal>
template<typename RemainValues, typename RemainIds, typename UniquifiedValues, typename UniquifiedIds, typename Eq>
using ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq >::new_uniquified_values
Initial value:
typename std::conditional<is_unique_value,
decltype(UniquifiedValues::push_back(
UniquifiedValues>::type

◆ uniquified_ids

template<typename Values, typename Less, typename Equal>
template<typename RemainValues, typename RemainIds, typename UniquifiedValues, typename UniquifiedIds, typename Eq>
using ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq >::uniquified_ids = typename uniquify::uniquified_ids

◆ uniquified_values

template<typename Values, typename Less, typename Equal>
template<typename RemainValues, typename RemainIds, typename UniquifiedValues, typename UniquifiedIds, typename Eq>
using ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq >::uniquified_values = typename uniquify::uniquified_values

◆ uniquify

template<typename Values, typename Less, typename Equal>
template<typename RemainValues, typename RemainIds, typename UniquifiedValues, typename UniquifiedIds, typename Eq>
using ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq >::uniquify
Initial value:
Eq>
decltype(RemainValues::PopFront()) new_remain_values
Definition utility/sequence.hpp:556
typename conditional< is_unique_value, decltype(UniquifiedValues::PushBack(Number< current_value >{})), UniquifiedValues >::type new_uniquified_values
Definition utility/sequence.hpp:559
decltype(RemainIds::PopFront()) new_remain_ids
Definition utility/sequence.hpp:557
typename conditional< is_unique_value, decltype(UniquifiedIds::PushBack(Number< current_id >{})), UniquifiedIds >::type new_uniquified_ids
Definition utility/sequence.hpp:564

Member Data Documentation

◆ current_id

template<typename Values, typename Less, typename Equal>
template<typename RemainValues, typename RemainIds, typename UniquifiedValues, typename UniquifiedIds, typename Eq>
index_t ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq >::current_id = RemainIds::front()
staticconstexpr

◆ current_value

template<typename Values, typename Less, typename Equal>
template<typename RemainValues, typename RemainIds, typename UniquifiedValues, typename UniquifiedIds, typename Eq>
index_t ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq >::current_value = RemainValues::front()
staticconstexpr

◆ is_unique_value

template<typename Values, typename Less, typename Equal>
template<typename RemainValues, typename RemainIds, typename UniquifiedValues, typename UniquifiedIds, typename Eq>
bool ck_tile::sequence_unique_sort< Values, Less, Equal >::sorted_sequence_uniquify_impl< RemainValues, RemainIds, UniquifiedValues, UniquifiedIds, Eq >::is_unique_value = (current_value != UniquifiedValues::back())
staticconstexpr

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