roo_collections
API Documentation for roo_collections
Loading...
Searching...
No Matches
flat_small_hashtable.h File Reference

Flat, memory-conscious hash table implementation. More...

#include <assert.h>
#include <inttypes.h>
#include <functional>
#include <initializer_list>
#include <memory>
#include "roo_backport.h"
#include "roo_backport/string_view.h"
#include "roo_collections/hash.h"
#include "roo_collections/small_string.h"
Include dependency graph for flat_small_hashtable.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  roo_collections::DefaultHashFn< Key >
 
struct  roo_collections::DefaultHashFn<::roo::string_view >
 
struct  roo_collections::DefaultHashFn< std::string >
 
struct  roo_collections::DefaultHashFn< const char * >
 
struct  roo_collections::DefaultHashFn< SmallString< N > >
 
struct  roo_collections::TransparentStringHashFn
 
struct  roo_collections::TransparentEq
 
struct  roo_collections::has_is_transparent< _Func, _SfinaeType, typename >
 
struct  roo_collections::has_is_transparent< _Func, _SfinaeType, std::void_t< typename _Func::is_transparent > >
 
struct  roo_collections::DefaultKeyFn< Entry >
 
class  roo_collections::FlatSmallHashtable< Entry, Key, HashFn, KeyFn, KeyCmpFn >
 Flat, memory-conscious hash table optimized for small collections. More...
 
class  roo_collections::FlatSmallHashtable< Entry, Key, HashFn, KeyFn, KeyCmpFn >::ConstIterator
 Constant forward iterator. More...
 
class  roo_collections::FlatSmallHashtable< Entry, Key, HashFn, KeyFn, KeyCmpFn >::Iterator
 Mutable forward iterator. More...
 

Namespaces

namespace  roo_collections
 

Typedefs

template<typename _Func , typename _SfinaeType >
using roo_collections::has_is_transparent_t = typename has_is_transparent< _Func, _SfinaeType >::type
 

Functions

uint16_t roo_collections::fastmod (uint32_t n, int idx)
 
int roo_collections::initialCapacityIdx (uint16_t size_hint)
 

Variables

static constexpr float roo_collections::kMaxFillRatio = 0.73
 
static constexpr uint16_t roo_collections::kRadkePrimes []
 
static constexpr uint64_t roo_collections::kRadkePrimeInverts []
 

Detailed Description

Flat, memory-conscious hash table implementation.

Definition in file flat_small_hashtable.h.