tlx
radix_sort.hpp File Reference
#include <tlx/container/simple_vector.hpp>
#include <tlx/define/likely.hpp>
#include <tlx/sort/strings/multikey_quicksort.hpp>
#include <tlx/sort/strings/string_ptr.hpp>
#include <stack>
#include <utility>
#include <vector>

Go to the source code of this file.

Classes

struct  RadixStep_CE0< StringShadowPtr >
 
struct  RadixStep_CE2< StringShadowPtr >
 
struct  RadixStep_CE3< StringShadowPtr >
 
struct  RadixStep_CI2< StringPtr >
 
struct  RadixStep_CI3< StringPtr >
 

Namespaces

 tlx
 
 tlx::sort_strings_detail
 

Functions

template<typename StringShadowPtr >
static void radixsort_CE0_loop (const StringShadowPtr &strptr, size_t depth, size_t memory)
 
template<typename StringPtr >
static void radixsort_CE0 (const StringPtr &strptr, size_t depth, size_t memory)
 Adapter method to allocate shadow array if needed. More...
 
template<typename StringPtr >
static void radixsort_CI3 (const StringPtr &strptr, uint16_t *charcache, size_t depth, size_t memory)
 
template<typename StringShadowPtr >
static void radixsort_CE2_loop (const StringShadowPtr &strptr, uint8_t *charcache, size_t depth, size_t memory)
 
template<typename StringPtr >
static void radixsort_CE2 (const StringPtr &strptr, size_t depth, size_t memory)
 
template<typename StringShadowPtr >
static void radixsort_CE3_loop (const StringShadowPtr &strptr, uint16_t *charcache, size_t depth, size_t memory)
 
template<typename StringPtr >
static void radixsort_CE3 (const StringPtr &strptr, size_t depth, size_t memory)
 
template<typename StringPtr >
static void radixsort_CI2 (const StringPtr &strptr, uint8_t *charcache, size_t depth, size_t memory)
 
template<typename StringPtr >
static void radixsort_CI2 (const StringPtr &strptr, size_t depth, size_t memory)
 
template<typename StringPtr >
static void radixsort_CI3 (const StringPtr &strptr, size_t depth, size_t memory)
 

Variables

static const size_t g_inssort_threshold