sort_impl Namespace Reference#
ck::sort_impl Namespace Reference
Classes | |
| struct | IndexedValueArray |
| struct | SortedCache |
| struct | SortedSequences |
| struct | SortedSequences< Unique, Seq, Compare, Equal, Sequence< Is... > > |
Typedefs | |
| template<bool Unique, typename Seq , typename Compare , typename Equal > | |
| using | sorted_sequences_t = SortedSequences< Unique, Seq, Compare, Equal, typename arithmetic_sequence_gen< 0, SortedCache< Unique, Seq, Compare, Equal >::data.size, 1 >::type > |
| using | Equal = ck::math::equal< index_t > |
Enumerations | |
| enum class | SortField { Values , Ids } |
Functions | |
| template<index_t... Is> | |
| constexpr auto | make_indexed_value_array (Sequence< Is... >) |
| template<index_t N, typename Compare > | |
| constexpr auto | insertion_sort (IndexedValueArray< N > arr, Compare comp) |
| template<index_t N, typename Equal > | |
| constexpr auto | unique (const IndexedValueArray< N > &sorted, Equal eq) |
| template<bool Unique, typename Compare , typename Equal , index_t... Is> | |
| constexpr auto | compute_sorted (Sequence< Is... > seq, Compare comp, Equal eq) |
| template<SortField Field, bool Unique, typename Seq , typename Compare , typename Equal , index_t I> | |
| constexpr index_t | get_sorted_field () |
Typedef Documentation
◆ Equal
| using ck::sort_impl::Equal = typedef ck::math::equal<index_t> |
◆ sorted_sequences_t
template<bool Unique, typename Seq , typename Compare , typename Equal >
| using ck::sort_impl::sorted_sequences_t = typedef SortedSequences< Unique, Seq, Compare, Equal, typename arithmetic_sequence_gen<0, SortedCache<Unique, Seq, Compare, Equal>::data.size, 1>:: type> |
Enumeration Type Documentation
◆ SortField
|
strong |
Function Documentation
◆ compute_sorted()
template<bool Unique, typename Compare , typename Equal , index_t... Is>
|
constexpr |
◆ get_sorted_field()
template<SortField Field, bool Unique, typename Seq , typename Compare , typename Equal , index_t I>
|
constexpr |
◆ insertion_sort()
template<index_t N, typename Compare >
|
constexpr |
◆ make_indexed_value_array()
template<index_t... Is>
|
constexpr |
◆ unique()
template<index_t N, typename Equal >
|
constexpr |