1 # <small>nlohmann::basic_json::</small>flatten
4 basic_json flatten() const;
7 The function creates a JSON object whose keys are JSON pointers (see [RFC 6901](https://tools.ietf.org/html/rfc6901))
8 and whose values are all primitive (see [`is_primitive()`](is_primitive.md) for more information). The original JSON
9 value can be restored using the [`unflatten()`](unflatten.md) function.
13 an object that maps JSON pointers to primitive values
17 Strong exception safety: if an exception occurs, the original value stays intact.
21 Linear in the size the JSON value.
25 Empty objects and arrays are flattened to `#!json null` and will not be reconstructed correctly by the
26 [`unflatten()`](unflatten.md) function.
32 The following code shows how a JSON object is flattened to an object whose keys consist of JSON pointers.
35 --8<-- "examples/flatten.cpp"
41 --8<-- "examples/flatten.output"
46 - [unflatten](unflatten.md) the reverse function
50 - Added in version 2.0.0.