Loading...
Searching...
No Matches
basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType, CustomBaseClass > Class Template Reference

namespace for Niels Lohmann More...

Inheritance diagram for basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType, CustomBaseClass >:

## Public Types

using | value_t = detail::value_t
using | json_pointer = ::nlohmann::json_pointer<StringType>
template<typename T, typename SFINAE>
using | json_serializer = JSONSerializer<T, SFINAE>
using | error_handler_t = detail::error_handler_t
using | cbor_tag_handler_t = detail::cbor_tag_handler_t
using | bjdata_version_t = detail::bjdata_version_t
using | initializer_list_t = std::initializer_list<detail::json_ref<basic_json>>
using | input_format_t = detail::input_format_t
using | json_sax_t = json_sax<basic_json>
using | parse_error
using | invalid_iterator = detail::invalid_iterator
using | type_error = detail::type_error
using | out_of_range = detail::out_of_range
using | other_error = detail::other_error
using | reference
using | const_reference = const value_type&
using | difference_type = std::ptrdiff_t
using | size_type = std::size_t
using | allocator_type = AllocatorType<basic_json>
using | pointer = typename std::allocator_traits<allocator_type>::pointer
using | const_pointer = typename std::allocator_traits<allocator_type>::const_pointer
using | iterator = iter_impl<basic_json>
using | const_iterator = iter_impl<const basic_json>
using | reverse_iterator = json_reverse_iterator<typename basic_json::iterator>
using | const_reverse_iterator = json_reverse_iterator<typename basic_json::const_iterator>

## Public Attributes

*JSON | Pointer
*SAX interface | type
**brief returns the allocator associated with the container *sa | https: static allocator_type get_allocator() { return allocator_type()
*brief returns version information on the library *sa | https: JSON_HEDLEY_WARN_UNUSED_RESULT static basic_json meta() { basic_json result
| result ["copyright"] = "(C) 2013-2026 Niels Lohmann"
return | result
***name JSON value data types *The data types to store a JSON value These types are derived from *the template arguments passed to class ref basic_json **brief a type for an object *sa | https: using object_t = ObjectType<StringType
***name JSON value data types *The data types to store a JSON value These types are derived from *the template arguments passed to class ref basic_json **brief a type for an object *sa | default_object_comparator_t
***name JSON value data types *The data types to store a JSON value These types are derived from *the template arguments passed to class ref basic_json **brief a type for an object *sa | AllocatorType< std::pair< const StringType, basic_json > >
*brief a type for an array *sa | https: using array_t = ArrayType<basic_json
*brief a type for an array *sa | AllocatorType< basic_json >
*brief a type for a string *sa | https: using string_t = StringType
*brief a type for a boolean *sa | https: using boolean_t = BooleanType
*brief a type for a number *(integer) *@sa https brief a type for a number *(unsigned) *@sa https brief a type for a number *(floating-point) *@sa https brief a type for a packed binary type *sa | https: using binary_t = nlohmann::byte_container_with_subtype<BinaryType>
*brief object key comparator type *sa | https: using object_comparator_t = detail::actual_object_comparator_t<basic_json>
***brief parser event types *sa | https: using parse_event_t = detail::parse_event_t
*brief per element parser callback type *sa | https: using parser_callback_t = detail::parser_callback_t<basic_json>
***name constructors and destructors *Constructors of class ref basic_json copy move constructor copy * | assignment
***name constructors and destructors *Constructors of class ref basic_json copy move constructor copy static functions creating and the destructor *data | m_data = {}

## Static Public Attributes

***name constructors and destructors *Constructors of class ref basic_json copy move constructor copy static functions creating | objects

## Friends

template<detail::value_t>
struct | detail::external_constructor
template<typename>
class | ::nlohmann::json_pointer
template<typename BasicJsonType, typename InputType>
class | ::nlohmann::detail::parser
template<typename BasicJsonType>
class | ::nlohmann::detail::iter_impl
template<typename BasicJsonType, typename CharType>
class | ::nlohmann::detail::binary_writer
template<typename BasicJsonType, typename InputType, typename SAX>
class | ::nlohmann::detail::binary_reader
template<typename BasicJsonType, typename InputAdapterType>
class | ::nlohmann::detail::json_sax_dom_parser
template<typename BasicJsonType, typename InputAdapterType>
class | ::nlohmann::detail::json_sax_dom_callback_parser
class | ::nlohmann::detail::exception

## Detailed Description

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator, template< typename T, typename SFINAE=void > class JSONSerializer = adl_serializer, class BinaryType = std::vector<std::uint8_t>, class CustomBaseClass = void>
class basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType, CustomBaseClass >

namespace for Niels Lohmann

a class to store JSON values

See also
  https://json.nlohmann.me/api/basic_json/
  https://github.com/nlohmann

Since
  version 1.0.0

a class to store JSON values

Since
  version 1.0.0

## Member Typedef Documentation

## parse_error

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator, template< typename T, typename SFINAE=void > class JSONSerializer = adl_serializer, class BinaryType = std::vector<std::uint8_t>, class CustomBaseClass = void>

using basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType, CustomBaseClass >::parse_error

Initial value:
{
using exception = detail::exception detail::parse_error
detail::exception
general exception of the basic_json class
Definition json.hpp:4489
detail::parse_error
exception indicating a parse error
Definition json.hpp:4589

## reference

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator, template< typename T, typename SFINAE=void > class JSONSerializer = adl_serializer, class BinaryType = std::vector<std::uint8_t>, class CustomBaseClass = void>

using basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType, CustomBaseClass >::reference

Initial value:
{
* the type of elements in a basic_json container
using value_type = basic_json value_type&

## Member Data Documentation

## https

template<template< typename U, typename V, typename... Args > class ObjectType = std::map, template< typename U, typename... Args > class ArrayType = std::vector, class StringType = std::string, class BooleanType = bool, class NumberIntegerType = std::int64_t, class NumberUnsignedType = std::uint64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator, template< typename T, typename SFINAE=void > class JSONSerializer = adl_serializer, class BinaryType = std::vector<std::uint8_t>, class CustomBaseClass = void>

* * * name JSON value data types* The data types to store a JSON value These types are derived from* the template arguments passed to class ref basic_json* * brief a type for an object* sa basic_json< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer, BinaryType, CustomBaseClass >::https

Initial value:
{
* @brief default object key comparator type
* The actual object key comparator type (@ref object_comparator_t) may be
* different.
* @sa https:
using default_object_comparator_t = std::less<StringType>

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

- IO/nlohmann/json.hpp