kblib 0.2.3
General utilities library for modern C++
trie.h File Reference

Provides the trie data structure. More...

#include "tdecl.h"
#include "sort.h"
#include "traits.h"
#include <array>
#include <bitset>
#include <vector>
Include dependency graph for trie.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  kblib::iterator_extractor< Container >
 
struct  kblib::indexer_extractor< Container >
 
struct  kblib::extractor_policy_for< Container, typename >
 
struct  kblib::extractor_policy_for< Container, void_t< decltype(std::declval< Container >()[0])> >
 
struct  kblib::detail::node< Elem, Value >
 
class  kblib::trie< Key, T, Extractor, bool >
 
class  kblib::trie< KeyElem, T, Extractor, false >
 
class  kblib::trie< KeyElem[], T, Extractor, false >
 
struct  kblib::default_extract< Key, void_if_t< is_linear_container_v< Key > > >
 
struct  kblib::default_extract< KeyElem[], void_if_t< std::is_integral_v< KeyElem > > >
 
class  kblib::trie_qset< Key, Extractor, offset_type >
 
class  kblib::trie_set< Key, Extractor, offset_type >
 
class  kblib::trie_map< Key, Value, Extractor, offset_type, SequenceContainer >
 
class  kblib::trie_qmap< Key, Value, Extractor, offset_type, SequenceContainer >
 
class  kblib::sparse_trie_set< Key, Extractor >
 
class  kblib::sparse_trie_map< Key, Value, Extractor >
 

Namespaces

namespace  kblib
 The main namespace in which all entities from kblib are defined.
 
namespace  kblib::detail
 The namespace used for implementation details within kblib.
 

Typedefs

template<typename Container >
using kblib::default_extractor_t = typename std::conditional< extractor_policy_for< Container >::value==extractor_policy::random_access, indexer_extractor< Container >, iterator_extractor< Container > >::type
 

Enumerations

enum class  kblib::extractor_policy { kblib::forward_iteration , kblib::random_access }
 

Detailed Description

Provides the trie data structure.

Author
killerbee
Date
2019-2021

Definition in file trie.h.