Niels Lohmann
d339a714ce
Write doubles from their bits only where double is IEEE 754 binary64
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 11:05:12 +02:00
Niels Lohmann
749ba78543
Merge branch 'json-view/21-images' into json-view/22-view-dump-fast
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 02:44:21 +02:00
Niels Lohmann
c8ab9bf991
Merge branch 'json-view/19-edit-set' into json-view/21-images
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 02:44:18 +02:00
Niels Lohmann
679672c9af
Merge branch 'json-view/16-view-simd' into json-view/19-edit-set
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 02:44:14 +02:00
Niels Lohmann
a241f67eb1
Merge branch 'json-view/13-view-dump' into json-view/16-view-simd
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 02:44:12 +02:00
Niels Lohmann
bae4148a78
Merge branch 'json-view/11-view-access' into json-view/13-view-dump
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 02:44:09 +02:00
Niels Lohmann
8d3272e93b
Merge branch 'json-view/08-view-builder' into json-view/11-view-access
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 02:44:06 +02:00
Niels Lohmann
7ee91c7d91
Suppress Flawfinder's read() finding on the deleted overload
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 02:43:48 +02:00
Niels Lohmann
38bdb36f7f
Merge branch 'json-view/21-images' into json-view/22-view-dump-fast
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 02:32:18 +02:00
Niels Lohmann
14be5361ea
Merge branch 'json-view/19-edit-set' into json-view/21-images
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 02:01:49 +02:00
Niels Lohmann
9144cd7bf0
Merge branch 'json-view/16-view-simd' into json-view/19-edit-set
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 01:50:10 +02:00
Niels Lohmann
7de40707dd
Merge branch 'json-view/13-view-dump' into json-view/16-view-simd
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 01:41:21 +02:00
Niels Lohmann
dd3d73a60b
Merge branch 'json-view/11-view-access' into json-view/13-view-dump
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 01:38:19 +02:00
Niels Lohmann
2d5d1ec7a8
Merge branch 'json-view/08-view-builder' into json-view/11-view-access
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 01:36:09 +02:00
Niels Lohmann
8e3b878e36
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 01:28:07 +02:00
Niels Lohmann
ccd2693623
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 01:26:31 +02:00
Niels Lohmann
dee4be88d6
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 01:24:42 +02:00
Niels Lohmann
486ab856d9
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 01:22:41 +02:00
Niels Lohmann
38e34eb960
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 00:18:21 +02:00
Niels Lohmann
b7f0de016f
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-10 00:13:01 +02:00
Niels Lohmann
e9dd4d2dae
Merge branch 'json-view/21-images' into json-view/22-view-dump-fast
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:51:41 +02:00
Niels Lohmann
7fd79a29e0
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:51:34 +02:00
Niels Lohmann
4e2e4f3184
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:51:18 +02:00
Niels Lohmann
35b64b367f
Merge branch 'json-view/19-edit-set' into json-view/21-images
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:44:59 +02:00
Niels Lohmann
f4e0b06685
Assign the first member when set() meets duplicate keys again
...
Lookups find the first member of a repeated key again, so set(object, key,
value) assigns that member (keeping the key where it is) and drops the
others, as documented before, and a view taken from object[key] shows the
new value. This undoes the code and documentation changes of 5cbb8e6d6 .
Lookups in edited objects (navigation of editable documents) stop at the
first match, like those of parsed objects.
The tests that commit added expect the first member from lookups now. In the
seeded differential test, the documents with repeated keys repeat them after
the real members; the reference holds the first members, which the edits
address and the lookups are compared with, while materialize() is compared
with what parse() makes of the document's dump.
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:44:10 +02:00
Niels Lohmann
ddd0423b14
Merge branch 'json-view/16-view-simd' into json-view/19-edit-set
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:33:56 +02:00
Niels Lohmann
61e3d97bfd
Keep the first of duplicate keys in the object hash index again
...
Lookups in objects with 128 members or more return the first member of a
repeated key again, like the linear search of smaller objects. This undoes
the code change of a69542046; its test now expects the first member from
lookups (with and without a table) and the last value from materialize()
and basic_json::parse().
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:33:31 +02:00
Niels Lohmann
42b5e4ac34
Merge branch 'json-view/13-view-dump' into json-view/16-view-simd
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:27:13 +02:00
Niels Lohmann
02f90bd307
Merge branch 'json-view/11-view-access' into json-view/13-view-dump
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:22:52 +02:00
Niels Lohmann
32853d2c90
Do not shrink the output of dump()
...
finish() copied the whole output when the buffer was more than twice as
large as the result (citm dump +11%). The tighter source_extent()
estimate already keeps the buffer of a small value small.
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:22:34 +02:00
Niels Lohmann
3faacc1c2f
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 23:20:52 +02:00
Niels Lohmann
c67f62ad6f
Merge branch 'json-view/21-images' into json-view/22-view-dump-fast
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 18:18:48 +02:00
Niels Lohmann
b1c87b40e4
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 18:09:21 +02:00
Niels Lohmann
0a99602e37
Merge branch 'json-view/19-edit-set' into json-view/21-images
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 17:36:35 +02:00
Niels Lohmann
8acbb65839
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 17:34:12 +02:00
Niels Lohmann
915ac4bc8b
Merge branch 'json-view/16-view-simd' into json-view/19-edit-set
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 17:22:43 +02:00
Niels Lohmann
a69542046c
Keep the last of duplicate keys in the object hash index
...
Lookups in objects with 128 members or more now return the last member of
a repeated key, like the linear search of smaller objects and like
materialize() and basic_json::parse(). build_object_index let the first
occurrence win, so the same text gave different results depending on the
size of the object.
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 17:13:26 +02:00
Niels Lohmann
66e875895f
Merge branch 'json-view/13-view-dump' into json-view/16-view-simd
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 17:06:43 +02:00
Niels Lohmann
bd0fc072fc
Merge branch 'json-view/11-view-access' into json-view/13-view-dump
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 16:58:15 +02:00
Niels Lohmann
45045ebb6d
Replace the removed operator bool of basic_json_view in the header and its tests
...
A view is tested with is_discarded(); the lookups in at(), value() and
contains(json_pointer) and the unit tests no longer rely on the explicit
conversion to bool.
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 16:53:54 +02:00
Niels Lohmann
1d76bc9750
Merge branch 'json-view/08-view-builder' into json-view/11-view-access
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 16:47:20 +02:00
Niels Lohmann
417c187d1a
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 16:35:53 +02:00
Niels Lohmann
658aac97eb
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 16:31:13 +02:00
Niels Lohmann
0998180165
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 16:25:35 +02:00
Niels Lohmann
5d69faf9df
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 16:11:50 +02:00
Niels Lohmann
4faa3fcca9
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 16:11:34 +02:00
Niels Lohmann
ce46d5d694
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 16:11:30 +02:00
Niels Lohmann
1d5f9a596b
Regenerate the amalgamated headers
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-09 16:11:24 +02:00
Niels Lohmann
8018ac65de
Merge branch 'json-view/19-edit-set' into json-view/21-images
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-08 16:39:50 +02:00
Niels Lohmann
8d27a4afbd
Merge branch 'json-view/21-images' into json-view/22-view-dump-fast
...
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-08 16:37:49 +02:00