JSON for Modern C++  3.6.1

◆ is_structured()

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>
constexpr bool nlohmann::basic_json::is_structured ( ) const
inlinenoexcept

This function returns true if and only if the JSON type is structured (array or object).

Returns
true if type is structured (array or object), false otherwise.
Complexity
Constant.
Exception safety
No-throw guarantee: this member function never throws exceptions.
Example
The following code exemplifies is_structured() for all JSON types.
1 #include <iostream>
2 #include <nlohmann/json.hpp>
3 
4 using json = nlohmann::json;
5 
6 int main()
7 {
8  // create JSON values
9  json j_null;
10  json j_boolean = true;
11  json j_number_integer = 17;
12  json j_number_float = 23.42;
13  json j_number_unsigned_integer = 12345678987654321u;
14  json j_object = {{"one", 1}, {"two", 2}};
15  json j_array = {1, 2, 4, 8, 16};
16  json j_string = "Hello, world";
17 
18  // call is_structured()
19  std::cout << std::boolalpha;
20  std::cout << j_null.is_structured() << '\n';
21  std::cout << j_boolean.is_structured() << '\n';
22  std::cout << j_number_integer.is_structured() << '\n';
23  std::cout << j_number_unsigned_integer.is_structured() << '\n';
24  std::cout << j_number_float.is_structured() << '\n';
25  std::cout << j_object.is_structured() << '\n';
26  std::cout << j_array.is_structured() << '\n';
27  std::cout << j_string.is_structured() << '\n';
28 }
basic_json<> json
default JSON class
Definition: json.hpp:871

Output (play with this example online):
false
false
false
false
false
true
true
false
The example code above can be translated with
g++ -std=c++11 -Isingle_include doc/examples/is_structured.cpp -o is_structured 
See also
is_primitive() – returns whether value is primitive
is_array() – returns whether value is an array
is_object() – returns whether value is an object
Since
version 1.0.0

Definition at line 14843 of file json.hpp.