Move image_check's description into load()'s Notes

check_structure.py (added to develop in #5638) only allows the standard API page sections, so the separate "image_check" section failed it. Its content now opens the Notes section, which directly follows; also wrapped a line that exceeded 160 characters.

Signed-off-by: Niels Lohmann <mail@nlohmann.me>
This commit is contained in:
Niels Lohmann committed 2026-10-02 11:44:33 +02:00
1 parent e0ae5040dc
commit 4068a5a4d8
1 file changed
+5 -5
@@ -89,7 +89,9 @@ Linear in the number of nodes, which are always copied into the document. With `
additionally linear in the combined length of the text and the decoded strings; `#!cpp image_check::bounds` and additionally linear in the combined length of the text and the decoded strings; `#!cpp image_check::bounds` and
`#!cpp image_check::none` do not read them. `#!cpp image_check::none` do not read them.
## `image_check` ## Notes
**The `image_check` modes.**
```cpp ```cpp
using image_check = detail::view::image_check; using image_check = detail::view::image_check;
@@ -116,8 +118,6 @@ fits a cache your own process just wrote and reads straight back, where damage w
rather than adversarial input; it still cannot crash or read out of bounds. `none` skips validation entirely and rather than adversarial input; it still cannot crash or read out of bounds. `none` skips validation entirely and
should only be used for an image you trust as much as your own memory. should only be used for an image you trust as much as your own memory.
## Notes
**Lifetime.** Overloads 1 and 2 borrow `image`: it must stay alive and byte-for-byte unchanged for as long as the **Lifetime.** Overloads 1 and 2 borrow `image`: it must stay alive and byte-for-byte unchanged for as long as the
returned document, and any [view](../basic_json_view/index.md) taken from it, is used -- exactly like a document returned document, and any [view](../basic_json_view/index.md) taken from it, is used -- exactly like a document
[`parse()`](parse.md) borrowed its input for. Overload 3 avoids this by keeping the vector itself; see [`parse()`](parse.md) borrowed its input for. Overload 3 avoids this by keeping the vector itself; see
@@ -134,8 +134,8 @@ returned document, and any [view](../basic_json_view/index.md) taken from it, is
[`root()`](root.md), element access, or [`materialize()`](../basic_json_view/materialize.md) read outside the image, [`root()`](root.md), element access, or [`materialize()`](../basic_json_view/materialize.md) read outside the image,
so those stay safe on a damaged one. It does *not* guarantee that the image describes valid JSON: a string so those stay safe on a damaged one. It does *not* guarantee that the image describes valid JSON: a string
that a `full` check would have rejected can make [`dump()`](../basic_json_view/dump.md) write invalid UTF-8 or invalid that a `full` check would have rejected can make [`dump()`](../basic_json_view/dump.md) write invalid UTF-8 or invalid
JSON, or throw `type_error.316`, and a number can read back with a value that does not match how it is spelled. Reserve `bounds` for images you already trust to be well-formed, and use it JSON, or throw `type_error.316`, and a number can read back with a value that does not match how it is spelled.
only to skip the extra scan. Reserve `bounds` for images you already trust to be well-formed, and use it only to skip the extra scan.
## Examples ## Examples