basic_json_document and basic_json_view take a view_mode (read_only, the default, or editable) instead of a bool: basic_json_document<json, true> did not say what true means. The shortcut aliases are unchanged. The kind of a node is a node_kind (the value_t values plus link, 10 as before), which removes the static_cast<std::uint8_t>(value_t::...) of every comparison. The node and image layouts are unchanged. Signed-off-by: Niels Lohmann <mail@nlohmann.me>
1.4 KiB
1.4 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 into
- json_view - the corresponding read-only view
- ordered_json_editable_view - the corresponding view for
ordered_json_editable_document
Version history
Added in version 3.13.0.