nlohmann::detail::exception Class Reference

general exception of the basic_json class More...

`#include <json.hpp>`

Inheritance diagram for nlohmann::detail::exception:
[legend]
Collaboration diagram for nlohmann::detail::exception:
[legend]

## Public Member Functions

const JSON_HEDLEY_RETURNS_NON_NULL char * | what () const noexcept override
| returns the explanatory string More...
const JSON_HEDLEY_RETURNS_NON_NULL char * | what () const noexcept override
| returns the explanatory string More...

## Public Attributes

const int | id
| the id of the exception More...

## Protected Member Functions

| exception (int id_, const char *what_arg)
| exception (int id_, const char *what_arg)

## Static Protected Member Functions

static std::string | name (const std::string &ename, int id_)
static std::string | name (const std::string &ename, int id_)

## Detailed Description

general exception of the basic_json class

This class is an extension of `std::exception` objects with a member id for exception ids. It is used as the base class for all exceptions thrown by the basic_json class. This class can hence be used as "wildcard" to catch exceptions.

Subclasses:

- parse_error for exceptions indicating a parse error
- invalid_iterator for exceptions indicating errors with iterators
- type_error for exceptions indicating executing a member function with a wrong type
- out_of_range for exceptions indicating access out of the defined range
- other_error for exceptions indicating other library errors

@liveexample{The following code shows how arbitrary library exceptions can be caught.,exception}

Since
  version 3.0.0

## Constructor & Destructor Documentation

## exception() [1/2]

nlohmann::detail::exception::exception | ( | int | id_,
|  | const char * | what_arg
| ) |  |

inlineprotected

## exception() [2/2]

nlohmann::detail::exception::exception | ( | int | id_,
|  | const char * | what_arg
| ) |  |

inlineprotected

## Member Function Documentation

## name() [1/2]

static std::string nlohmann::detail::exception::name | ( | const std::string & | ename,
|  | int | id_
| ) |  |

inlinestaticprotected

## name() [2/2]

static std::string nlohmann::detail::exception::name | ( | const std::string & | ename,
|  | int | id_
| ) |  |

inlinestaticprotected

## what() [1/2]

const JSON_HEDLEY_RETURNS_NON_NULL char* nlohmann::detail::exception::what | ( |  | ) | const

inlineoverridenoexcept

returns the explanatory string

## what() [2/2]

const JSON_HEDLEY_RETURNS_NON_NULL char* nlohmann::detail::exception::what | ( |  | ) | const

inlineoverridenoexcept

returns the explanatory string

## Member Data Documentation

## id

const int nlohmann::detail::exception::id

the id of the exception

The documentation for this class was generated from the following file:

- build/_deps/json-src/include/nlohmann/json.hpp