parcel 0.2.2
Wrappable, wire-transferable C++23 value system with JSON serialization
Loading...
Searching...
No Matches
unordered_map.h File Reference

Hash-backed map cells — TypedHashMapCell<T> and HashMapCell. More...

#include <parcel/cell.h>
#include <parcel/descriptor.h>
#include <parcel/registry.h>
#include <algorithm>
#include <initializer_list>
#include <map>
#include <memory>
#include <ranges>
#include <stdexcept>
#include <string>
#include <string_view>
#include <unordered_map>
#include <utility>
#include <vector>
Include dependency graph for unordered_map.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  parcel::TypedHashMapCell< T >
 Homogeneous string-keyed unordered_map of values of type T. More...
 
class  parcel::HashMapCell
 Heterogeneous string-keyed unordered_map of cell_t. More...
 
class  parcel::HashMapCellTypeDescriptor
 Descriptor for the heterogeneous HashMapCell. More...
 

Detailed Description

Hash-backed map cells — TypedHashMapCell<T> and HashMapCell.

A faster sibling of TypedMapCell / MapCell for hot paths. The wire shape is the same (a JSON object), but the storage is std::unordered_map<std::string, …> so iteration order is implementation- defined. Key order is sorted on the wire so two equal logical maps produce identical JSON regardless of insertion order.