Change how `HybridDirectMap` is parameterized. Specify `direct_capacity` as a runtime constructor parameter rather than a template parameter. Replace `expected_min_key` template parameter with `Traits`. This generalizes keys from an integer type to a type with a translation to an unsigned integer type. `SlowMap` is indexed by translated keys to avoid imposing a hashing requirement on the key type. Split private headers `hybrid_direct_common.h` (reexported) and `hybrid_direct_internal.h` (not reexported) out of `hybrid_direct_map.h` to keep the main public header focused. PiperOrigin-RevId: 889683578
Riegeli/records is a file format for storing a sequence of string records, typically serialized protocol buffers. It supports dense compression, fast decoding, seeking, detection and optional skipping of data corruption, filtering of proto message fields for even faster decoding, and parallel encoding.
See documentation.
Riegeli file format will only change in a backward compatible way (i.e. future readers will understand current files, but current readers might not understand files using future features).
Riegeli C++ API might change in incompatible ways.