ska_flat_hash_map.hpp File Reference
#include "mpqc/util/external/c++/fwd.h"
#include <cstdint>
#include <cstddef>
#include <functional>
#include <cmath>
#include <algorithm>
#include <iterator>
#include <utility>
#include <type_traits>
Include dependency graph for ska_flat_hash_map.hpp:
This graph shows which files directly or indirectly include this file:

Classes

struct  ska::detailv3::functor_storage< Result, Functor >
 
struct  ska::detailv3::functor_storage< Result, Result(*)(Args...)>
 
struct  ska::detailv3::KeyOrValueHasher< key_type, value_type, hasher >
 
struct  ska::detailv3::KeyOrValueEquality< key_type, value_type, key_equal >
 
struct  ska::detailv3::sherwood_v3_entry< T >
 
struct  ska::detailv3::AssignIfTrue< T, bool >
 
struct  ska::detailv3::AssignIfTrue< T, false >
 
struct  ska::detailv3::HashPolicySelector< T, typename >
 
struct  ska::detailv3::HashPolicySelector< T, void_t< typename T::hash_policy > >
 
class  ska::detailv3::sherwood_v3_table< T, FindKey, ArgumentHash, Hasher, ArgumentEqual, Equal, ArgumentAlloc, EntryAlloc >
 
struct  ska::detailv3::sherwood_v3_table< T, FindKey, ArgumentHash, Hasher, ArgumentEqual, Equal, ArgumentAlloc, EntryAlloc >::templated_iterator< ValueType >
 
struct  ska::prime_number_hash_policy
 
struct  ska::power_of_two_hash_policy
 
struct  ska::fibonacci_hash_policy
 
class  ska::flat_hash_map< K, V, H, E, A >
 
class  ska::flat_hash_set< T, H, E, A >
 
struct  ska::power_of_two_std_hash< T >
 

Namespaces

 ska
 
 ska::detailv3
 

Macros

#define SKA_NOINLINE(...)   __VA_ARGS__ __attribute__((noinline))
 

Typedefs

template<typename... >
using ska::detailv3::void_t = void
 

Functions

int8_t ska::detailv3::log2 (size_t value)
 
size_t ska::detailv3::next_power_of_two (size_t i)
 

Macro Definition Documentation

◆ SKA_NOINLINE

#define SKA_NOINLINE (   ...)    __VA_ARGS__ __attribute__((noinline))