#include <array>
#include <cassert>
#include <cstddef>
#include <limits>
#include <type_traits>
#include <utility>
#include <vector>
#include <tlx/define/likely.hpp>
#include <tlx/math/clz.hpp>
#include <tlx/math/div_ceil.hpp>
#include <tlx/math/ffs.hpp>
#include <tlx/meta/log2.hpp>
Go to the source code of this file.
|
class | IntegerRank< Int > |
| Compute the rank of an integer x (i.e. More...
|
|
class | BitArrayRecursive< Size, SizeIsAtmost64 > |
| Internal implementation of BitArray; do not invoke directly. More...
|
|
class | BitArrayRecursive< Size, false > |
|
class | BitArrayRecursive< Size, true > |
|
class | BitArray< Size > |
| A BitArray of fixed size supporting reading, setting, and clearing of individual bits. More...
|
|
class | BucketComputation< Radix, Int > |
|
struct | PairKeyExtract< KeyType, DataType > |
| Used as an adapter to implement RadixHeapPair on top of RadixHeap. More...
|
|
class | RadixHeap< ValueType, KeyExtract, KeyType, Radix > |
| This class implements a monotonic integer min priority queue, more specific a multi-level radix heap. More...
|
|
|
template<typename KeyType , typename DataType , unsigned Radix = 8> |
using | RadixHeapPair = RadixHeap< std::pair< KeyType, DataType >, radix_heap_detail::PairKeyExtract< KeyType, DataType >, KeyType, Radix > |
| This class is a variant of tlx::RadixHeap for data types which do not include the key directly. More...
|
|
|
template<typename DataType , unsigned Radix = 8, typename KeyExtract = void> |
auto | make_radix_heap (KeyExtract &&key_extract) -> RadixHeap< DataType, KeyExtract, decltype(key_extract(std::declval< DataType >())), Radix > |
| Helper to easily derive type of RadixHeap for a pre-C++17 compiler. More...
|
|