sequence.hpp Source File#
tile/core/container/sequence.hpp
Go to the documentation of this file.
1102CK_TILE_HOST_DEVICE constexpr auto histogram_sorted_sequence(SeqSortedSamples, sequence<r, rs...>)
1191// or we can say, find the greatest common divider(gcd) from right to left, for the slice length
1201// <4, 2, 4, 1, 2>, 4 -> lengths:<1, 1, 2, 1, 2> , nums: <4, 2, 2, 1, 1> : 16 slices , slice_idx: 2
1202// <4, 2, 4, 1, 6>, 4 -> lengths:<1, 1, 2, 1, 2> , nums: <4, 2, 2, 1, 3> : 48 slices , slice_idx: 2
1203// <4, 2, 5, 1, 2>, 10 -> lengths:<1, 1, 5, 1, 2> , nums: <4, 2, 1, 1, 1> : 8 slices , slice_idx: 1
1214// mask:<1, 1, 1, 0, 1>, -> lengths:<1, 2, 1, 4, 2> , nums: <4, 1, 1, 1, 1> : 8 slices , slice_idx: 0
1216// return tuple<slice_lengths, slice_nums, slice_index>, slice_index is at which index will start
1229 static_assert(container_reduce(pick_sequence_elements_by_mask(Seq{}, Mask{}), multiplies{}, 1) %
1249slice_sequence(Seq, number<SliceSize>, Mask = typename uniform_sequence_gen<Seq::size(), 1>::type{})
Definition tile/core/arch/amd_buffer_addressing.hpp:110
__type_pack_element< I, Ts... > at_index_t
Definition tile/core/container/sequence.hpp:40
Definition tile/core/algorithm/cluster_descriptor.hpp:13
remove_cv_t< std::remove_reference_t< T > > remove_cvref_t
Definition type_traits.hpp:21
CK_TILE_HOST_DEVICE constexpr auto make_sequence(number< Is >...)
Definition tile/core/container/sequence.hpp:1029
CK_TILE_HOST_DEVICE constexpr auto operator*(const multi_index< NSize > &a, const T &b)
Definition tile/core/container/multi_index.hpp:75
CK_TILE_HOST_DEVICE constexpr auto container_reduce(const Container &x, Reduce reduce, Init init, number< IBegin >=number< 0 >{}, number< IEnd >=number< Container::size()>{}, number< IStep >=number< 1 >{})
Definition tile/core/container/container_helper.hpp:198
CK_TILE_HOST_DEVICE constexpr auto pick_sequence_elements_by_mask(Seq, Mask)
Definition tile/core/container/sequence.hpp:945
CK_TILE_HOST_DEVICE constexpr auto generate_sequence_v2(F &&f, number< N >)
Definition tile/core/container/sequence.hpp:1045
CK_TILE_HOST_DEVICE constexpr auto transform_sequences(F f, sequence< Xs... >)
Definition tile/core/container/sequence.hpp:832
CK_TILE_HOST_DEVICE constexpr auto reverse_exclusive_scan_sequence(Seq, Reduce, number< Init >)
Definition tile/core/container/sequence.hpp:863
CK_TILE_HOST_DEVICE constexpr bool sequence_any_of(Seq, F f)
Definition tile/core/container/sequence.hpp:996
CK_TILE_HOST_DEVICE constexpr auto operator+(const multi_index< NSize > &a, const T &b)
Definition tile/core/container/multi_index.hpp:55
constexpr auto reverse_slice_sequence(Seq, number< SliceSize >, Mask=typename uniform_sequence_gen< Seq::size(), 1 >::type{})
Definition tile/core/container/sequence.hpp:1223
typename __make_integer_seq< impl::__integer_sequence, index_t, N >::seq_type make_index_sequence
Definition tile/core/container/sequence.hpp:230
CK_TILE_HOST_DEVICE constexpr auto sequence_pop_back(Seq)
Definition tile/core/container/sequence.hpp:819
CK_TILE_HOST_DEVICE constexpr auto operator-(const multi_index< NSize > &a, const T &b)
Definition tile/core/container/multi_index.hpp:65
CK_TILE_HOST_DEVICE constexpr auto generate_array(F &&f, number< N >)
Definition tile/core/container/sequence.hpp:1115
constexpr auto exclusive_scan_sequence(Seq, Reduce, number< Init >)
Definition tile/core/container/sequence.hpp:901
CK_TILE_HOST_DEVICE constexpr auto merge_sequences(Seqs...)
Definition tile/core/container/sequence.hpp:826
CK_TILE_HOST_DEVICE constexpr auto pick_sequence_elements_by_ids(Seq, sequence< Is... >)
Definition tile/core/container/sequence.hpp:916
CK_TILE_HOST_DEVICE constexpr index_t gcd(index_t x, index_t y)
Definition tile/core/numeric/math.hpp:268
CK_TILE_HOST_DEVICE constexpr auto generate_sequence(F, number< N >)
Definition tile/core/container/sequence.hpp:1037
CK_TILE_HOST_DEVICE constexpr auto sequence_pop_front(sequence< I, Is... >)
Definition tile/core/container/sequence.hpp:813
CK_TILE_HOST_DEVICE constexpr auto modify_sequence_elements_by_ids(Seq, Values, Ids)
Definition tile/core/container/sequence.hpp:972
CK_TILE_HOST_DEVICE constexpr auto to_sequence(tuple< number< Is >... >)
Definition tile/core/container/sequence.hpp:1055
CK_TILE_HOST_DEVICE constexpr auto unpack(F &&f, X &&x)
Definition tile/core/utility/functional.hpp:200
CK_TILE_HOST_DEVICE constexpr bool sequence_all_of(Seq, F f)
Definition tile/core/container/sequence.hpp:1010
CK_TILE_HOST_DEVICE constexpr auto operator/(sequence< Xs... >, sequence< Ys... >)
Definition tile/core/container/sequence.hpp:737
CK_TILE_HOST_DEVICE constexpr auto reverse_inclusive_scan_sequence(Seq, Reduce, number< Init >)
Definition tile/core/container/sequence.hpp:857
CK_TILE_HOST_DEVICE constexpr auto histogram_sorted_sequence(SeqSortedSamples, sequence< r, rs... >)
Definition tile/core/container/sequence.hpp:1102
CK_TILE_HOST_DEVICE constexpr auto inclusive_scan_sequence(Seq, Reduce, number< Init >)
Definition tile/core/container/sequence.hpp:870
typename sequence_merge< Seqs... >::type sequence_merge_t
Definition tile/core/container/sequence.hpp:1023
constexpr auto slice_sequence(Seq, number< SliceSize >, Mask=typename uniform_sequence_gen< Seq::size(), 1 >::type{})
Definition tile/core/container/sequence.hpp:1249
typename uniform_sequence_gen< NSize, I >::type uniform_sequence_gen_t
Definition tile/core/container/sequence.hpp:1026
CK_TILE_HOST_DEVICE constexpr bool operator==(const array< T, Size > &a, const array< T, Size > &b)
Definition tile/core/container/array.hpp:263
CK_TILE_HOST_DEVICE constexpr auto operator%(sequence< Xs... >, sequence< Ys... >)
Definition tile/core/container/sequence.hpp:745
CK_TILE_HOST_DEVICE constexpr index_t reduce_on_sequence(Seq, Reduce f, number< Init >)
Definition tile/core/container/sequence.hpp:982
CK_TILE_HOST_DEVICE constexpr auto make_tuple(Xs &&... xs)
Definition tile/core/container/tuple.hpp:360
constexpr auto prefix_sum_sequence(Seq)
Definition tile/core/container/sequence.hpp:908
CK_TILE_HOST_DEVICE constexpr bool operator!=(const array< T, Size > &a, const array< T, Size > &b)
Definition tile/core/container/array.hpp:280
Definition reduce2d_kernel.hpp:20
Definition tile/core/container/sequence.hpp:289
CK_TILE_HOST_DEVICE constexpr index_t operator()(index_t i) const
Definition tile/core/container/sequence.hpp:290
make_index_sequence< IEnd > type
Definition tile/core/container/sequence.hpp:308
Definition tile/core/container/sequence.hpp:287
static constexpr bool kHasContent
Definition tile/core/container/sequence.hpp:299
typename std::conditional< kHasContent, type0, type1 >::type type
Definition tile/core/container/sequence.hpp:302
typename sequence_gen<(IEnd - IBegin)/Increment, F >::type type0
Definition tile/core/container/sequence.hpp:296
sequence<> type1
Definition tile/core/container/sequence.hpp:297
A fixed-size array container similar to std::array with additional utilities.
Definition tile/core/container/array.hpp:43
WorkSeq type
Definition tile/core/container/sequence.hpp:967
Definition tile/core/container/sequence.hpp:955
typename modify_sequence_elements_by_ids_impl< new_work_seq, decltype(RemainValues::pop_front()), decltype(RemainIds::pop_front())>::type type
Definition tile/core/container/sequence.hpp:958
decltype(WorkSeq::modify(RemainIds::front(), RemainValues::front())) new_work_seq
Definition tile/core/container/sequence.hpp:956
WorkSeq type
Definition tile/core/container/sequence.hpp:939
Definition tile/core/container/sequence.hpp:925
typename std::conditional< RemainMask::front(), decltype(WorkSeq::push_back(RemainSeq::front())), WorkSeq >::type new_work_seq
Definition tile/core/container/sequence.hpp:926
typename pick_sequence_elements_by_mask_impl< new_work_seq, decltype(RemainSeq::pop_front()), decltype(RemainMask::pop_front())>::type type
Definition tile/core/container/sequence.hpp:930
constexpr auto operator()(Histogram &h)
Definition tile/core/container/sequence.hpp:1068
ck_tile::detail::sorted_sequence_histogram< h_idx, sequence< x >, sequence< r, rs... > >::operator()
constexpr auto operator()(Histogram &h)
Definition tile/core/container/sequence.hpp:1087
Definition tile/core/container/sequence.hpp:1062
sequence< Ints... > seq_type
Definition tile/core/container/sequence.hpp:224
Definition tile/core/container/sequence.hpp:219
static constexpr index_t _flag
Definition tile/core/container/sequence.hpp:1155
static constexpr auto slice_size
Definition tile/core/container/sequence.hpp:1142
typename sequence_merge< sequence< x/slice_length >, typename old_scan::dim_slices >::type dim_slices
Definition tile/core/container/sequence.hpp:1148
typename sequence_merge< std::conditional_t< m, sequence< slice_size/slice_length >, sequence< slice_size > >, typename old_scan::remaining_slice_sizes >::type remaining_slice_sizes
Definition tile/core/container/sequence.hpp:1150
static constexpr index_t split_flag
Definition tile/core/container/sequence.hpp:1161
static constexpr index_t _split_idx
Definition tile/core/container/sequence.hpp:1158
static constexpr auto slice_length
Definition tile/core/container/sequence.hpp:1143
static constexpr index_t split_idx
Definition tile/core/container/sequence.hpp:1162
static constexpr index_t _split_flag
Definition tile/core/container/sequence.hpp:1157
typename sequence_merge< sequence< slice_length >, typename old_scan::dim_lengths >::type dim_lengths
Definition tile/core/container/sequence.hpp:1146
reverse_slice_sequence_impl< sequence< xs... >, sequence< ms... >, sequence< ids... >, SliceSize > old_scan
Definition tile/core/container/sequence.hpp:1139
sequence< slice_length > dim_lengths
Definition tile/core/container/sequence.hpp:1173
static constexpr index_t split_idx
Definition tile/core/container/sequence.hpp:1182
std::conditional_t< m, sequence< slice_size/slice_length >, sequence< slice_size > > remaining_slice_sizes
Definition tile/core/container/sequence.hpp:1175
sequence< x/slice_length > dim_slices
Definition tile/core/container/sequence.hpp:1174
static constexpr index_t split_flag
Definition tile/core/container/sequence.hpp:1181
static constexpr auto slice_length
Definition tile/core/container/sequence.hpp:1170
static constexpr index_t _flag
Definition tile/core/container/sequence.hpp:1179
static constexpr auto slice_size
Definition tile/core/container/sequence.hpp:1169
Definition tile/core/container/sequence.hpp:1125
impl::at_index_t< I, constant< Ns >... > element
Definition tile/core/container/sequence.hpp:396
sequence< element<(sizeof...(Ns) - 1 - Ids)>::value... > type
Definition tile/core/container/sequence.hpp:397
Definition tile/core/container/sequence.hpp:390
Definition tile/core/container/sequence.hpp:670
Definition tile/core/numeric/math.hpp:98
Definition tile/core/numeric/math.hpp:50
typename sequence_exclusive_scan< old_scan, sequence< Ys... >, Reduce >::type type
Definition tile/core/container/sequence.hpp:885
typename sequence_merge< sequence< Xs... >, sequence< Reduce{}(Y, sequence< Xs... >{}.back())> >::type old_scan
Definition tile/core/container/sequence.hpp:883
sequence< Xs... > type
Definition tile/core/container/sequence.hpp:891
sequence< Xs... > type
Definition tile/core/container/sequence.hpp:897
Definition tile/core/container/sequence.hpp:878
sequence<> type
Definition tile/core/container/sequence.hpp:278
sequence< Is > type
Definition tile/core/container/sequence.hpp:272
static constexpr index_t Is
Definition tile/core/container/sequence.hpp:271
Definition tile/core/container/sequence.hpp:258
static constexpr index_t NRemainLeft
Definition tile/core/container/sequence.hpp:259
typename sequence_merge< typename sequence_gen_impl< IBegin, NRemainLeft, G >::type, typename sequence_gen_impl< IMiddle, NRemainRight, G >::type >::type type
Definition tile/core/container/sequence.hpp:263
static constexpr index_t NRemainRight
Definition tile/core/container/sequence.hpp:260
static constexpr index_t IMiddle
Definition tile/core/container/sequence.hpp:261
Definition tile/core/container/sequence.hpp:255
typename sequence_gen_impl< 0, NSize, F >::type type
Definition tile/core/container/sequence.hpp:281
WorkingY2X type
Definition tile/core/container/sequence.hpp:690
Definition tile/core/container/sequence.hpp:678
static constexpr auto new_y2x
Definition tile/core/container/sequence.hpp:679
typename sequence_map_inverse_impl< X2Y, decltype(new_y2x), XBegin+1, XRemain - 1 >:: type type
Definition tile/core/container/sequence.hpp:682
Definition tile/core/container/sequence.hpp:675
typename sequence_map_inverse_impl< SeqMap, typename uniform_sequence_gen< SeqMap::size(), 0 >::type, 0, SeqMap::size()>::type type
Definition tile/core/container/sequence.hpp:693
sequence< Xs..., Ys... > type
Definition tile/core/container/sequence.hpp:243
Definition tile/core/container/sequence.hpp:236
typename sequence_merge< Seq, typename sequence_merge< Seqs... >::type >::type type
Definition tile/core/container/sequence.hpp:237
Seq type
Definition tile/core/container/sequence.hpp:428
sequence< Reduce{}(Xs, Ys)... > type
Definition tile/core/container/sequence.hpp:422
Definition tile/core/container/sequence.hpp:413
typename sequence_reduce< Reduce, Seq, typename sequence_reduce< Reduce, Seqs... >::type >::type type
Definition tile/core/container/sequence.hpp:414
typename sequence_reverse_inclusive_scan< sequence< Is... >, Reduce, Init >::type old_scan
Definition tile/core/container/sequence.hpp:330
static constexpr index_t new_reduce
Definition tile/core/container/sequence.hpp:332
typename sequence_merge< sequence< new_reduce >, old_scan >::type type
Definition tile/core/container/sequence.hpp:334
sequence< Reduce{}(I, Init)> type
Definition tile/core/container/sequence.hpp:340
sequence<> type
Definition tile/core/container/sequence.hpp:346
Definition tile/core/container/sequence.hpp:325
Definition tile/core/container/sequence.hpp:23
typename sequence_merge< MergedIds, LeftIds >::type merged_ids
Definition tile/core/container/sequence.hpp:489
typename sequence_merge< MergedValues, LeftValues >::type merged_values
Definition tile/core/container/sequence.hpp:488
typename sequence_merge< MergedIds, RightIds >::type merged_ids
Definition tile/core/container/sequence.hpp:506
typename sequence_merge< MergedValues, RightValues >::type merged_values
Definition tile/core/container/sequence.hpp:505
Definition tile/core/container/sequence.hpp:443
typename std::conditional< choose_left, RightIds, decltype(RightIds::pop_front())>::type new_right_ids
Definition tile/core/container/sequence.hpp:460
typename merge::merged_ids merged_ids
Definition tile/core/container/sequence.hpp:472
decltype(MergedIds::push_back(number< chosen_id >{})) new_merged_ids
Definition tile/core/container/sequence.hpp:451
static constexpr index_t chosen_id
Definition tile/core/container/sequence.hpp:448
static constexpr bool choose_left
Definition tile/core/container/sequence.hpp:444
decltype(MergedValues::push_back(number< chosen_value >{})) new_merged_values
Definition tile/core/container/sequence.hpp:450
sorted_sequence_merge_impl< new_left_values, new_left_ids, new_right_values, new_right_ids, new_merged_values, new_merged_ids, Comp > merge
Definition tile/core/container/sequence.hpp:463
static constexpr index_t chosen_value
Definition tile/core/container/sequence.hpp:446
typename merge::merged_values merged_values
Definition tile/core/container/sequence.hpp:471
typename std:: conditional< choose_left, RightValues, decltype(RightValues::pop_front())>::type new_right_values
Definition tile/core/container/sequence.hpp:458
typename std:: conditional< choose_left, decltype(LeftValues::pop_front()), LeftValues >::type new_left_values
Definition tile/core/container/sequence.hpp:453
typename std::conditional< choose_left, decltype(LeftIds::pop_front()), LeftIds >::type new_left_ids
Definition tile/core/container/sequence.hpp:455
Definition tile/core/container/sequence.hpp:515
typename merge::merged_values merged_values
Definition tile/core/container/sequence.hpp:524
typename merge::merged_ids merged_ids
Definition tile/core/container/sequence.hpp:525
sorted_sequence_merge_impl< LeftValues, LeftIds, RightValues, RightIds, sequence<>, sequence<>, Comp > merge
Definition tile/core/container/sequence.hpp:516
sequence< Value > sorted_values
Definition tile/core/container/sequence.hpp:569
sequence< Id > sorted_ids
Definition tile/core/container/sequence.hpp:570
static constexpr bool choose_x
Definition tile/core/container/sequence.hpp:558
typename std:: conditional< choose_x, sequence< ValueX, ValueY >, sequence< ValueY, ValueX > >::type sorted_values
Definition tile/core/container/sequence.hpp:560
ck_tile::sequence_sort_impl< sequence< ValueX, ValueY >, sequence< IdX, IdY >, Compare >::sorted_ids
typename std::conditional< choose_x, sequence< IdX, IdY >, sequence< IdY, IdX > >::type sorted_ids
Definition tile/core/container/sequence.hpp:562
sequence<> sorted_ids
Definition tile/core/container/sequence.hpp:577
sequence<> sorted_values
Definition tile/core/container/sequence.hpp:576
Definition tile/core/container/sequence.hpp:434
ck_tile::sequence_sort_impl< left_unsorted_values, left_unsorted_ids, Compare >::right_sorted_values
typename right_sort::sorted_values right_sorted_values
Definition tile/core/container/sequence.hpp:542
typename merged_sorted::merged_values sorted_values
Definition tile/core/container/sequence.hpp:551
typename right_sort::sorted_ids right_sorted_ids
Definition tile/core/container/sequence.hpp:543
sequence_split< Values, nsize/2 > split_unsorted_values
Definition tile/core/container/sequence.hpp:530
typename split_unsorted_values::right_type right_unsorted_values
Definition tile/core/container/sequence.hpp:539
sequence_sort_impl< left_unsorted_values, left_unsorted_ids, Compare > left_sort
Definition tile/core/container/sequence.hpp:535
typename split_unsorted_ids::left_type left_unsorted_ids
Definition tile/core/container/sequence.hpp:534
sequence_sort_impl< right_unsorted_values, right_unsorted_ids, Compare > right_sort
Definition tile/core/container/sequence.hpp:541
sequence_split< Ids, nsize/2 > split_unsorted_ids
Definition tile/core/container/sequence.hpp:531
typename split_unsorted_ids::right_type right_unsorted_ids
Definition tile/core/container/sequence.hpp:540
static constexpr index_t nsize
Definition tile/core/container/sequence.hpp:528
typename left_sort::sorted_values left_sorted_values
Definition tile/core/container/sequence.hpp:536
typename left_sort::sorted_ids left_sorted_ids
Definition tile/core/container/sequence.hpp:537
sorted_sequence_merge< left_sorted_values, left_sorted_ids, right_sorted_values, right_sorted_ids, Compare > merged_sorted
Definition tile/core/container/sequence.hpp:545
typename merged_sorted::merged_ids sorted_ids
Definition tile/core/container/sequence.hpp:552
typename split_unsorted_values::left_type left_unsorted_values
Definition tile/core/container/sequence.hpp:533
Definition tile/core/container/sequence.hpp:582
typename sort::sorted_values type
Definition tile/core/container/sequence.hpp:587
typename arithmetic_sequence_gen< 0, Values::size(), 1 >::type unsorted_ids
Definition tile/core/container/sequence.hpp:583
sequence_sort_impl< Values, unsorted_ids, Compare > sort
Definition tile/core/container/sequence.hpp:584
typename sort::sorted_ids sorted2unsorted_map
Definition tile/core/container/sequence.hpp:588
Definition tile/core/container/sequence.hpp:352
decltype(Seq::extract(range1{})) right_type
Definition tile/core/container/sequence.hpp:359
typename arithmetic_sequence_gen< I, NSize, 1 >::type range1
Definition tile/core/container/sequence.hpp:356
typename arithmetic_sequence_gen< 0, I, 1 >::type range0
Definition tile/core/container/sequence.hpp:355
static constexpr index_t NSize
Definition tile/core/container/sequence.hpp:353
decltype(Seq::extract(range0{})) left_type
Definition tile/core/container/sequence.hpp:358
UniquifiedValues uniquified_values
Definition tile/core/container/sequence.hpp:638
UniquifiedIds uniquified_ids
Definition tile/core/container/sequence.hpp:639
Definition tile/core/container/sequence.hpp:600
static constexpr bool is_unique_value
Definition tile/core/container/sequence.hpp:604
decltype(RemainValues::pop_front()) new_remain_values
Definition tile/core/container/sequence.hpp:606
sorted_sequence_uniquify_impl< new_remain_values, new_remain_ids, new_uniquified_values, new_uniquified_ids, Eq > uniquify
Definition tile/core/container/sequence.hpp:620
typename uniquify::uniquified_values uniquified_values
Definition tile/core/container/sequence.hpp:627
typename std::conditional< is_unique_value, decltype(UniquifiedValues::push_back( number< current_value >{})), UniquifiedValues >::type new_uniquified_values
Definition tile/core/container/sequence.hpp:609
static constexpr index_t current_id
Definition tile/core/container/sequence.hpp:602
decltype(RemainIds::pop_front()) new_remain_ids
Definition tile/core/container/sequence.hpp:607
typename uniquify::uniquified_ids uniquified_ids
Definition tile/core/container/sequence.hpp:628
typename std::conditional< is_unique_value, decltype(UniquifiedIds::push_back(number< current_id >{})), UniquifiedIds >::type new_uniquified_ids
Definition tile/core/container/sequence.hpp:615
static constexpr index_t current_value
Definition tile/core/container/sequence.hpp:601
Definition tile/core/container/sequence.hpp:644
typename uniquify::uniquified_ids uniquified_ids
Definition tile/core/container/sequence.hpp:652
sorted_sequence_uniquify_impl< decltype(SortedValues::pop_front()), decltype(SortedIds::pop_front()), sequence< SortedValues::front()>, sequence< SortedIds::front()>, Eq > uniquify
Definition tile/core/container/sequence.hpp:645
typename uniquify::uniquified_values uniquified_values
Definition tile/core/container/sequence.hpp:651
Definition tile/core/container/sequence.hpp:593
sequence_sort< Values, Less > sort
Definition tile/core/container/sequence.hpp:655
typename sort::sorted2unsorted_map sorted_ids
Definition tile/core/container/sequence.hpp:657
typename uniquify::uniquified_values type
Definition tile/core/container/sequence.hpp:662
typename uniquify::uniquified_ids sorted2unsorted_map
Definition tile/core/container/sequence.hpp:663
typename sort::type sorted_values
Definition tile/core/container/sequence.hpp:656
sorted_sequence_uniquify< sorted_values, sorted_ids, Equal > uniquify
Definition tile/core/container/sequence.hpp:659
Definition tile/core/container/sequence.hpp:49
static CK_TILE_HOST_DEVICE constexpr auto reorder_old_to_new(MapOld2New)
Definition tile/core/container/sequence.hpp:110
static CK_TILE_HOST_DEVICE constexpr auto pop_back()
Definition tile/core/container/sequence.hpp:139
static CK_TILE_HOST_DEVICE constexpr auto get(number< I >)
Definition tile/core/container/sequence.hpp:64
static CK_TILE_HOST_DEVICE constexpr auto transform(F f)
Definition tile/core/container/sequence.hpp:195
static CK_TILE_HOST_DEVICE constexpr auto sum()
Definition tile/core/container/sequence.hpp:178
static CK_TILE_HOST_DEVICE constexpr auto pop_front()
Definition tile/core/container/sequence.hpp:137
static CK_TILE_HOST_DEVICE constexpr auto back()
Definition tile/core/container/sequence.hpp:131
static CK_TILE_HOST_DEVICE constexpr auto at()
Definition tile/core/container/sequence.hpp:78
static CK_TILE_HOST_DEVICE constexpr auto at(number< I >)
Definition tile/core/container/sequence.hpp:85
static CK_TILE_HOST_DEVICE constexpr auto product()
Definition tile/core/container/sequence.hpp:179
static CK_TILE_HOST_DEVICE constexpr auto push_front(number< Xs >...)
Definition tile/core/container/sequence.hpp:148
static CK_TILE_HOST_DEVICE constexpr auto push_back(sequence< Xs... >)
Definition tile/core/container/sequence.hpp:154
static CK_TILE_HOST_DEVICE constexpr index_t size()
Definition tile/core/container/sequence.hpp:53
static CK_TILE_HOST_DEVICE constexpr index_t at(index_t I)
Definition tile/core/container/sequence.hpp:70
static CK_TILE_HOST_DEVICE constexpr bool is_static()
Definition tile/core/container/sequence.hpp:54
static CK_TILE_HOST_DEVICE constexpr auto extract(sequence< Ids... >)
Definition tile/core/container/sequence.hpp:173
static CK_TILE_HOST_DEVICE constexpr auto push_front(sequence< Xs... >)
Definition tile/core/container/sequence.hpp:142
static CK_TILE_HOST_DEVICE constexpr auto reverse()
Definition tile/core/container/sequence.hpp:120
CK_TILE_HOST_DEVICE constexpr auto operator[](I i) const
Definition tile/core/container/sequence.hpp:92
static CK_TILE_HOST_DEVICE constexpr auto get()
Definition tile/core/container/sequence.hpp:57
static CK_TILE_HOST_DEVICE constexpr auto reorder_new_to_old(sequence< IRs... >)
Definition tile/core/container/sequence.hpp:98
static CK_TILE_HOST_DEVICE constexpr auto front()
Definition tile/core/container/sequence.hpp:125
static CK_TILE_HOST_DEVICE constexpr auto push_back(number< Xs >...)
Definition tile/core/container/sequence.hpp:160
static CK_TILE_HOST_DEVICE constexpr auto modify(number< I >, number< X >)
Definition tile/core/container/sequence.hpp:183
static CK_TILE_HOST_DEVICE constexpr auto extract(number< Ids >...)
Definition tile/core/container/sequence.hpp:167
Definition tile/core/container/tuple.hpp:192
Definition tile/core/container/sequence.hpp:316
CK_TILE_HOST_DEVICE constexpr index_t operator()(index_t) const
Definition tile/core/container/sequence.hpp:317
Definition tile/core/container/sequence.hpp:314
typename sequence_gen< NSize, F >::type type
Definition tile/core/container/sequence.hpp:320