sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp > Struct Template Reference#
ck_tile::sequence_sort_impl< Values, Ids, Compare >::sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp > Struct Template Reference
#include <sequence.hpp>
Public Types | |
| using | new_merged_values = decltype(MergedValues::push_back(number<chosen_value>{})) |
| using | new_merged_ids = decltype(MergedIds::push_back(number<chosen_id>{})) |
| using | new_left_values |
| using | new_left_ids |
| using | new_right_values |
| using | new_right_ids |
| using | merge |
| using | merged_values = typename merge::merged_values |
| using | merged_ids = typename merge::merged_ids |
Static Public Attributes | |
| static constexpr bool | choose_left = LeftValues::front() < RightValues::front() |
| static constexpr index_t | chosen_value |
| static constexpr index_t | chosen_id = choose_left ? LeftIds::front() : RightIds::front() |
Member Typedef Documentation
◆ merge
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
| using ck_tile::sequence_sort_impl< Values, Ids, Compare >::sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp >::merge |
Initial value:
Comp>
Definition utility/sequence.hpp:394
decltype(MergedValues::PushBack(Number< chosen_value >{})) new_merged_values
Definition utility/sequence.hpp:401
decltype(MergedIds::PushBack(Number< chosen_id >{})) new_merged_ids
Definition utility/sequence.hpp:402
typename conditional< choose_left, decltype(LeftValues::PopFront()), LeftValues >::type new_left_values
Definition utility/sequence.hpp:404
typename conditional< choose_left, RightIds, decltype(RightIds::PopFront())>::type new_right_ids
Definition utility/sequence.hpp:411
typename conditional< choose_left, RightValues, decltype(RightValues::PopFront())>::type new_right_values
Definition utility/sequence.hpp:409
typename conditional< choose_left, decltype(LeftIds::PopFront()), LeftIds >::type new_left_ids
Definition utility/sequence.hpp:406
◆ merged_ids
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
| using ck_tile::sequence_sort_impl< Values, Ids, Compare >::sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp >::merged_ids = typename merge::merged_ids |
◆ merged_values
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
| using ck_tile::sequence_sort_impl< Values, Ids, Compare >::sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp >::merged_values = typename merge::merged_values |
◆ new_left_ids
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
| using ck_tile::sequence_sort_impl< Values, Ids, Compare >::sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp >::new_left_ids |
Initial value:
static constexpr bool choose_left
Definition utility/sequence.hpp:395
◆ new_left_values
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
| using ck_tile::sequence_sort_impl< Values, Ids, Compare >::sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp >::new_left_values |
Initial value:
typename std::
conditional<choose_left, decltype(LeftValues::pop_front()), LeftValues>::type
◆ new_merged_ids
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
| using ck_tile::sequence_sort_impl< Values, Ids, Compare >::sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp >::new_merged_ids = decltype(MergedIds::push_back(number<chosen_id>{})) |
◆ new_merged_values
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
| using ck_tile::sequence_sort_impl< Values, Ids, Compare >::sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp >::new_merged_values = decltype(MergedValues::push_back(number<chosen_value>{})) |
◆ new_right_ids
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
| using ck_tile::sequence_sort_impl< Values, Ids, Compare >::sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp >::new_right_ids |
Initial value:
◆ new_right_values
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
| using ck_tile::sequence_sort_impl< Values, Ids, Compare >::sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, MergedValues, MergedIds, Comp >::new_right_values |
Initial value:
typename std::
conditional<choose_left, RightValues, decltype(RightValues::pop_front())>::type
Member Data Documentation
◆ choose_left
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
|
staticconstexpr |
◆ chosen_id
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
|
staticconstexpr |
◆ chosen_value
template<typename Values, typename Ids, typename Compare>
template<typename LeftValues, typename LeftIds, typename RightValues, typename RightIds, typename MergedValues, typename MergedIds, typename Comp>
|
staticconstexpr |
Initial value:
=
choose_left ? LeftValues::front() : RightValues::front()
The documentation for this struct was generated from the following file: