Niels Lohmann
0db359cabc
Restore v3.12.0 support for custom object key types
...
Custom object_t types whose key_type is not string_t compiled with
v3.12.0 for several APIs that unreleased changes broke:
- to_bson failed for every custom key type (#5553 kept a const string_t*
to the key); the nested entry's header is now written where the entry
is found.
- Copying deep values (and parse, merge_patch, update, insert) required
operator== on keys (#5389 ); keys without one are now paired via find().
- to_cbor/to_msgpack required an implicit conversion to string_t (#5746 ,
#5328 ); keys without one go through a temporary basic_json again.
- at() required a conversion to string_t for its error message (#5727 );
other keys are passed to concat() unchanged again.
The new unit-custom-object-key-type.cpp covers five key types with
different capabilities.
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 14:37:07 +02:00
..
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-07-04 11:13:25 +02:00
2026-10-04 12:00:31 +02:00
2026-10-04 11:46:32 +02:00
2025-04-05 18:54:35 +02:00
2026-10-04 11:46:52 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-07 07:38:24 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-04 11:46:32 +02:00
2026-10-04 11:46:32 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-04 18:20:20 +02:00
2026-10-04 12:13:49 +02:00
2026-10-02 11:32:15 +02:00
2026-10-04 11:46:25 +02:00
2026-10-02 11:32:15 +02:00
2025-01-17 06:53:35 +01:00
2026-10-02 11:32:15 +02:00
2026-10-04 11:46:32 +02:00
2026-10-04 12:13:49 +02:00
2024-12-09 23:02:30 +01:00
2026-10-04 11:46:32 +02:00
2026-10-02 11:32:15 +02:00
2026-07-09 17:24:19 +02:00
2026-10-04 22:11:34 +02:00
2026-10-04 22:11:34 +02:00
2026-10-04 12:13:49 +02:00
2026-10-04 12:13:49 +02:00
2026-10-04 12:13:49 +02:00
2026-10-04 12:13:49 +02:00
2025-04-05 18:54:35 +02:00
2026-10-02 11:32:15 +02:00
2026-06-29 22:15:18 +02:00
2024-12-09 23:02:30 +01:00
2024-12-06 18:38:25 +01:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-06 22:33:29 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-06-29 22:15:18 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2025-04-05 18:54:35 +02:00
2025-04-05 18:54:35 +02:00
2025-04-05 18:54:35 +02:00
2026-06-29 22:15:18 +02:00
2026-10-02 11:32:15 +02:00
2025-04-05 18:54:35 +02:00
2026-10-02 11:32:15 +02:00
2025-04-05 18:54:35 +02:00
2026-10-02 11:32:15 +02:00
2026-10-04 12:00:31 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-04 11:57:41 +02:00
2026-10-04 17:53:29 +02:00
2026-10-04 17:53:29 +02:00
2026-10-04 17:53:29 +02:00
2026-10-02 11:32:15 +02:00
2026-10-09 14:37:07 +02:00
2026-07-04 11:13:25 +02:00
2026-10-02 17:25:17 +02:00
2026-10-02 17:25:17 +02:00
2026-10-02 17:25:17 +02:00
2026-10-02 17:25:17 +02:00
2026-10-02 17:25:17 +02:00
2026-10-02 17:25:17 +02:00
2026-10-02 17:25:17 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-04 11:46:18 +02:00
2026-10-02 11:32:15 +02:00
2026-06-29 22:15:18 +02:00
2026-06-29 22:15:18 +02:00
2026-06-29 22:15:18 +02:00
2026-09-30 22:15:20 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-07 07:38:24 +02:00
2026-10-02 11:32:15 +02:00
2025-01-17 06:53:35 +01:00
2026-07-09 17:24:19 +02:00
2026-10-07 19:18:51 +02:00
2026-06-29 22:15:18 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-06 07:33:34 +02:00
2026-10-02 11:32:15 +02:00
2026-10-06 07:33:34 +02:00
2026-10-06 07:33:34 +02:00
2026-10-06 07:33:34 +02:00
2026-10-02 11:32:15 +02:00
2026-10-06 07:33:34 +02:00
2026-06-29 22:15:18 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-02 11:32:15 +02:00
2026-10-04 11:46:32 +02:00
2026-10-06 22:33:29 +02:00