mirror of
https://github.com/nlohmann/json.git
synced 2026-11-03 03:15:34 +00:00
The single features/json_view.md page grew to ~600 lines covering eight
topics. Split it into features/json_view/ with an overview page and
pages for ownership and lifetime, differences from basic_json, reading
values, generic code, editing, and images.
The new differences page collects what was spread over several sections
("What is the same", "What is different", "Duplicate keys", and notes in
the conversion and serialization sections) under one summary table, and
adds the parts of the basic_json interface a view does not have. The
other pages now link to it instead of restating the rules.
Internal links across the documentation point to the new pages.
Signed-off-by: Niels Lohmann <mail@nlohmann.me>
1.5 KiB
1.5 KiB
nlohmann::json_editable_view
Defined in header <nlohmann/json_view.hpp>
using json_editable_view = basic_json_view<json, view_mode::editable>;
This type is a basic_json_view of a value of a
json_editable_document. It offers the same read-only interface as
json_view; what is different is what it can be a view of — a value that
set and push_back can change, with every view
still referring to it seeing the change, see Edits.
Examples
??? example
The example below is the same as [`json_editable_document`'s](json_editable_document.md): every view read back
out of the document — `#!cpp doc.root()` and the views nested under it — sees the edits made through `set`.
```cpp
--8<-- "examples/json_editable_document.cpp"
```
Output:
```json
--8<-- "examples/json_editable_document.output"
```
See also
json_editable_document- the document type this view refers intojson_view- the corresponding read-only viewordered_json_editable_view- the corresponding view forordered_json_editable_document- Zero-copy JSON views - editing a document in place and writing it back
Version history
Added in version 3.13.0.