CellModules
nlohmann::detail::exception Class Reference

general exception of the basic_json class More...

#include <json.hpp>

Inheritance diagram for nlohmann::detail::exception:
nlohmann::detail::invalid_iterator nlohmann::detail::other_error nlohmann::detail::out_of_range nlohmann::detail::parse_error nlohmann::detail::type_error

Public Member Functions

const 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)
 

Static Protected Member Functions

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

Private Attributes

std::runtime_error m
 an exception object as storage for error messages More...
 

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

Definition at line 145 of file json.hpp.

Constructor & Destructor Documentation

◆ exception()

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

Definition at line 158 of file json.hpp.

Member Function Documentation

◆ name()

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

Definition at line 160 of file json.hpp.

◆ what()

const char * nlohmann::detail::exception::what ( ) const
inlineoverridenoexcept

returns the explanatory string

Definition at line 149 of file json.hpp.

Member Data Documentation

◆ id

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

the id of the exception

Definition at line 155 of file json.hpp.

◆ m

std::runtime_error nlohmann::detail::exception::m
private

an exception object as storage for error messages

Definition at line 167 of file json.hpp.


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