JSON for Modern C++  3.0
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 = int64_t, class NumberFloatType = double, template< typename U > class AllocatorType = std::allocator>
bool nlohmann::basic_json::is_structured ( ) const
inlinenoexcept

This function returns true iff the JSON type is structured (array or object).

Returns
true if type is structured (array or object), false otherwise.
Complexity
Constant.
Example
The following code exemplifies is_structured for all JSON types.
1 #include <json.hpp>
2 
3 using namespace nlohmann;
4 
5 int main()
6 {
7  // create JSON values
8  json j_null;
9  json j_boolean = true;
10  json j_number_integer = 17;
11  json j_number_float = 23.42;
12  json j_object = {{"one", 1}, {"two", 2}};
13  json j_array = {1, 2, 4, 8, 16};
14  json j_string = "Hello, world";
15 
16  // call is_structured()
17  std::cout << std::boolalpha;
18  std::cout << j_null.is_structured() << '\n';
19  std::cout << j_boolean.is_structured() << '\n';
20  std::cout << j_number_integer.is_structured() << '\n';
21  std::cout << j_number_float.is_structured() << '\n';
22  std::cout << j_object.is_structured() << '\n';
23  std::cout << j_array.is_structured() << '\n';
24  std::cout << j_string.is_structured() << '\n';
25 }
a class to store JSON values
Definition: json.hpp:130
bool is_structured() const noexcept
return whether type is structured
Definition: json.hpp:1757
namespace for Niels Lohmann
Definition: json.hpp:55
Output (play with this example online):
false
false
false
false
true
true
false
The example code above can be translated with
g++ -std=c++11 -Isrc doc/examples/is_structured.cpp -o is_structured