Renderd7-nightly  v0.7.0
nlohmann::basic_json::json_value Union Reference

a JSON value More...

Public Member Functions

 json_value ()=default
 default constructor (for null values)
 
 json_value (boolean_t v) noexcept
 constructor for booleans
 
 json_value (number_integer_t v) noexcept
 constructor for numbers (integer)
 
 json_value (number_unsigned_t v) noexcept
 constructor for numbers (unsigned)
 
 json_value (number_float_t v) noexcept
 constructor for numbers (floating-point)
 
 json_value (value_t t)
 constructor for empty values of a given type
 
 json_value (const string_t &value)
 constructor for strings
 
 json_value (string_t &&value)
 constructor for rvalue strings
 
 json_value (const object_t &value)
 constructor for objects
 
 json_value (object_t &&value)
 constructor for rvalue objects
 
 json_value (const array_t &value)
 constructor for arrays
 
 json_value (array_t &&value)
 constructor for rvalue arrays
 
 json_value (const typename binary_t::container_type &value)
 constructor for binary arrays
 
 json_value (typename binary_t::container_type &&value)
 constructor for rvalue binary arrays
 
 json_value (const binary_t &value)
 constructor for binary arrays (internal type)
 
 json_value (binary_t &&value)
 constructor for rvalue binary arrays (internal type)
 

Public Attributes

object_tobject
 object (stored with pointer to save storage)
 
array_tarray
 array (stored with pointer to save storage)
 
string_tstring
 string (stored with pointer to save storage)
 
binary_tbinary
 binary (stored with pointer to save storage)
 
boolean_t boolean
 boolean
 
number_integer_t number_integer
 number (integer)
 
number_unsigned_t number_unsigned
 number (unsigned integer)
 
number_float_t number_float
 number (floating-point)
 

Detailed Description

a JSON value

The actual storage for a JSON value of the basic_json class. This union combines the different storage types for the JSON value types defined in value_t.

JSON type value_t type used type
object object pointer to object_t
array array pointer to array_t
string string pointer to string_t
boolean boolean boolean_t
number number_integer number_integer_t
number number_unsigned number_unsigned_t
number number_float number_float_t
binary binary pointer to binary_t
null null no value is stored
Note
Variable-length types (objects, arrays, and strings) are stored as pointers. The size of the union should not exceed 64 bits if the default value types are used.
Since
version 1.0.0

GitHub |