1
0
mirror of https://github.com/nlohmann/json.git synced 2025-07-27 00:41:05 +03:00

Consolidate documentation (#3071)

* 🔥 consolidate documentation
* ♻️ overwork std specializations
* 🚚 move images files to mkdocs
* ♻️ fix URLs
* 🔧 tweak MkDocs configuration
* 🔧 add namespaces
* 📝 document deprecations
* 📝 document documentation generation
* 🚸 improve search
* 🚸 add examples
* 🚧 start adding documentation for macros
* 📝 add note for https://github.com/nlohmann/json/issues/874#issuecomment-1001699139
* 📝 overwork example handling
* 📝 fix Markdown tables
This commit is contained in:
Niels Lohmann
2021-12-29 13:41:01 +01:00
committed by GitHub
parent 6d3115924c
commit 29cd970b94
392 changed files with 4827 additions and 12560 deletions

View File

@ -1,4 +1,4 @@
# basic_json::parse_error
# <small>nlohmann::basic_json::</small>parse_error
```cpp
class parse_error : public exception;
@ -7,7 +7,9 @@ class parse_error : public exception;
This exception is thrown by the library when a parse error occurs. Parse errors can occur during the deserialization of
JSON text, BSON, CBOR, MessagePack, UBJSON, as well as when using JSON Patch.
Exceptions have ids 1xx.
Member `byte` holds the byte index of the last read character in the input file (see note below).
Exceptions have ids 1xx (see [list of parse errors](../../home/exceptions.md#parse-errors)).
```plantuml
std::exception <|-- basic_json::exception
@ -38,12 +40,12 @@ class basic_json::parse_error #FFFF00 {
- **id** - the id of the exception
- **byte** - byte index of the parse error
## Note
## Notes
For an input with _n_ bytes, 1 is the index of the first character and _n_+1 is the index of the terminating null byte
For an input with $n$ bytes, 1 is the index of the first character and $n+1$ is the index of the terminating null byte
or the end of file. This also holds true when reading a byte vector for binary formats.
## Example
## Examples
??? example
@ -59,6 +61,14 @@ or the end of file. This also holds true when reading a byte vector for binary f
--8<-- "examples/parse_error.output"
```
## See also
- [List of parse errors](../../home/exceptions.md#parse-errors)
- [`invalid_iterator`](invalid_iterator.md) for exceptions indicating errors with iterators
- [`type_error`](type_error.md) for exceptions indicating executing a member function with a wrong type
- [`out_of_range`](out_of_range.md) for exceptions indicating access out of the defined range
- [`other_error`](other_error.md) for exceptions indicating other library errors
## Version history
- Since version 3.0.0.