yfast 0.6.1
Loading...
Searching...
No Matches
yfast::impl::XFastTrie< Leaf, H, BitExtractor, Hash, Compare > Class Template Reference

#include <xfast.h>

Classes

struct  ApproxReport

Public Types

typedef Leaf::Key Key

Public Member Functions

 XFastTrie (BitExtractor bx=BitExtractor(), Compare cmp=Compare())
 XFastTrie (const XFastTrie &other)=delete
 XFastTrie (XFastTrie &&other) noexcept
Leaf * leftmost () const
Leaf * rightmost () const
Leaf * find (const Key &key) const
Leaf * pred (const Key &key, bool strict=false) const
Leaf * succ (const Key &key, bool strict=false) const
void insert (Leaf *leaf)
void remove (Leaf *leaf)
void clear ()

Protected Types

enum  Missed { EMPTY , MISSED_LEFT , ON_TARGET , MISSED_RIGHT }
typedef internal::XFastNode< Leaf > Node

Detailed Description

template<typename Leaf, unsigned int H, internal::BitExtractorGeneric< typename Leaf::Key > BitExtractor = internal::BitExtractor<typename Leaf::Key>, internal::MapGeneric< typename BitExtractor::ShiftResult, std::uintptr_t > Hash = internal::DefaultHash<typename BitExtractor::ShiftResult, std::uintptr_t>, typename Compare = std::less<typename Leaf::Key>>
class yfast::impl::XFastTrie< Leaf, H, BitExtractor, Hash, Compare >

x-fast trie implementation

Template Parameters
Leaflower level leaf type
Hkey length in bits
BitExtractorhelper type to provide key shifts and bit extractions
Hashmap from shifted keys to std::uintptr_t
Comparekey comparator

The documentation for this class was generated from the following file: