Files
json/docs/mkdocs/docs/api/json_editable_document.md
T
Niels Lohmann d04f78864c Document editable json_documents
- API pages for set and push_back of basic_json_document and for the
  editable aliases; the class overviews name the Editable parameter
- type_error.319 on the exceptions page
- the feature page explains editing, and the examples show when it
  helps: a configuration file changed without reformatting it

Signed-off-by: Niels Lohmann <mail@nlohmann.me>
2026-09-30 21:02:05 +02:00

1.5 KiB

nlohmann::json_editable_document

Defined in header <nlohmann/json_view.hpp>

using json_editable_document = basic_json_document<json, true>;

This type is an editable basic_json_document of the default json specialization: in addition to everything json_document offers, set and push_back change values after parsing, without ever rewriting the source text -- see Edits and Editing a document.

Examples

??? example

The example below patches two fields of a small configuration document -- changing one and adding another --
and dumps it back out with the member order and the spelling of the untouched number preserved, something a
plain [`json`](json.md) value cannot do.

```cpp
--8<-- "examples/json_editable_document.cpp"
```

Output:

```json
--8<-- "examples/json_editable_document.output"
```

See also

Version history

Since version 3.13.0.