qb  2.0.0.0
C++17 Actor Framework
qb Issue Watch Star Fork Follow @isndev
Loading...
Searching...
No Matches
Containers & Allocators

Custom containers and memory allocators for performance. More...

Collaboration diagram for Containers & Allocators:

Files

file  string.h
 Fixed-size string implementation optimized for performance.
file  pipe.h
 Implementation of a dynamic extensible buffer.
file  ring_buffer.h
 Ring buffer implementation.
file  unordered_map.h
 Optimized unordered map implementations.
file  unordered_set.h
 Optimized unordered set implementations.

Typedefs

template<typename K, typename V, typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<std::pair<const K, V>>>
using qb::unordered_map = std::unordered_map<K, V, H, E, A>
 The primary unordered map implementation.
template<typename K, typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<K>>
using qb::unordered_set = std::unordered_set<K, H, E, A>
 The primary unordered set implementation.

Detailed Description

Custom containers and memory allocators for performance.

Includes `qb::allocator::pipe`, `qb::string`, and optimized hash maps/sets.

Typedef Documentation

◆ unordered_map

template<typename K, typename V, typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<std::pair<const K, V>>>
using qb::unordered_map = std::unordered_map<K, V, H, E, A>

The primary unordered map implementation.

In release builds, this uses the high-performance ska::unordered_map implementation. In debug builds, it falls back to std::unordered_map for better debugging support.

Template Parameters
KThe key type
VThe value type
HThe hash function type (defaults to std::hash<K>)
EThe equality function type (defaults to std::equal_to<K>)
AThe allocator type

◆ unordered_set

template<typename K, typename H = std::hash<K>, typename E = std::equal_to<K>, typename A = std::allocator<K>>
using qb::unordered_set = std::unordered_set<K, H, E, A>

The primary unordered set implementation.

In release builds, this uses the high-performance ska::unordered_set implementation. In debug builds, it falls back to std::unordered_set for better debugging support.

Template Parameters
KThe key type
HThe hash function type (defaults to std::hash<K>)
EThe equality function type (defaults to std::equal_to<K>)
AThe allocator type