Niels Lohmann
1eaaf4211d
Replace a container by a scalar in constant time once it is linked
...
Replacing an array or object that spans several nodes by a scalar looks
up its parent from the root (find_parent), which is linear in the size
of the document: setting every element of a 20,000 element array took
more than half a second. The parent only has to switch to links once;
afterward the extent of the replaced value no longer matters. Nodes that
an entry of a moved sequence links to are now marked (node_flags::linked),
and assign() skips the lookup for them.
Signed-off-by: Niels Lohmann <mail@nlohmann.me >
2026-10-18 14:50:30 +02:00
..
2026-10-17 08:28:28 +02:00
2026-10-11 08:24:31 +02:00
2026-10-11 08:24:31 +02:00
2026-10-14 17:38:36 +02:00
2026-10-15 20:04:57 +02:00
2026-10-15 20:04:57 +02:00
2026-10-15 20:04:57 +02:00
2026-10-15 20:04:57 +02:00
2026-10-15 20:04:57 +02:00
2026-10-17 08:30:36 +02:00
2026-10-15 20:04:57 +02:00
2026-10-15 20:04:57 +02:00
2026-10-15 20:04:57 +02:00
2026-10-18 13:27:08 +02:00
2026-10-11 08:21:13 +02:00
2026-10-06 22:53:03 +02:00
2026-10-15 20:01:20 +02:00
2026-10-08 16:11:16 +02:00
2026-10-06 22:33:29 +02:00
2026-10-14 17:38:37 +02:00
2026-10-09 17:05:36 +02:00
2026-10-17 08:28:28 +02:00
2026-10-17 08:28:28 +02:00
2026-10-17 08:28:28 +02:00
2026-10-11 08:22:00 +02:00
2026-10-07 07:39:05 +02:00
2026-10-09 16:56:14 +02:00
2026-10-10 00:05:02 +02:00
2026-10-14 17:38:36 +02:00
2026-10-11 08:21:13 +02:00
2026-10-15 20:01:21 +02:00
2026-10-16 19:16:21 +02:00
2026-10-06 07:22:55 +02:00
2026-10-08 16:11:16 +02:00
2026-10-09 16:56:14 +02:00
2026-10-13 17:16:52 +02:00
2026-10-11 08:24:31 +02:00
2026-10-11 08:24:31 +02:00
2026-10-11 08:24:31 +02:00
2026-10-11 08:24:31 +02:00
2026-10-11 08:24:31 +02:00
2026-10-10 00:05:02 +02:00
2026-10-08 16:11:16 +02:00
2026-10-06 07:22:55 +02:00
2026-10-13 17:16:52 +02:00
2026-10-07 16:37:19 +02:00
2026-10-16 19:16:21 +02:00
2026-10-11 08:21:41 +02:00
2026-10-08 16:11:16 +02:00
2026-10-16 19:16:21 +02:00
2026-10-15 20:01:22 +02:00
2026-10-16 19:16:21 +02:00
2026-10-18 13:31:32 +02:00
2026-10-18 13:31:46 +02:00
2026-10-18 14:50:30 +02:00
2026-10-17 08:30:27 +02:00
2026-10-18 13:31:43 +02:00
2026-10-17 08:28:28 +02:00
2026-10-17 08:28:28 +02:00
2026-10-17 08:28:28 +02:00
2026-10-14 17:38:36 +02:00
2026-10-12 09:33:43 +02:00
2026-10-06 22:53:03 +02:00
2026-10-10 00:05:02 +02:00
2026-10-09 16:56:14 +02:00
2026-10-08 16:11:16 +02:00
2026-10-08 16:11:16 +02:00
2026-10-13 17:16:52 +02:00
2026-10-15 20:04:42 +02:00
2026-10-16 19:16:21 +02:00
2026-10-16 19:16:21 +02:00
2026-10-16 19:16:21 +02:00
2026-10-15 20:08:12 +02:00
2026-10-15 22:42:46 +02:00
2026-10-07 08:50:12 +02:00
2026-10-06 22:33:29 +02:00
2026-10-07 19:17:57 +02:00