JSON for Modern C++ 2.1.1
Loading...
Searching...
No Matches

◆ 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< ObjectType, ArrayType, StringType, BooleanType, NumberIntegerType, NumberUnsignedType, NumberFloatType, AllocatorType, JSONSerializer >::is_structured ( ) const
inlineconstexprnoexcept

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\n Constant.
Exception safety\n No-throw guarantee: this member function never throws
exceptions.
Example\n The following code exemplifies is_structured() for all JSON
types.
1#include <json.hpp>
2
3using json = nlohmann::json;
4
5int main()
6{
7 // create JSON values
9 json j_boolean = true;
11 json j_number_float = 23.42;
12 json j_number_unsigned_integer = 12345678987654321u;
13 json j_object = {{"one", 1}, {"two", 2}};
14 json j_array = {1, 2, 4, 8, 16};
15 json j_string = "Hello, world";
16
17 // call is_structured()
18 std::cout << std::boolalpha;
19 std::cout << j_null.is_structured() << '\n';
20 std::cout << j_boolean.is_structured() << '\n';
21 std::cout << j_number_integer.is_structured() << '\n';
22 std::cout << j_number_unsigned_integer.is_structured() << '\n';
23 std::cout << j_number_float.is_structured() << '\n';
24 std::cout << j_object.is_structured() << '\n';
25 std::cout << j_array.is_structured() << '\n';
26 std::cout << j_string.is_structured() << '\n';
27}
static basic_json array(std::initializer_list< basic_json > init=std::initializer_list< basic_json >())
explicitly create an array from an initializer list
Definition json.hpp:2165
constexpr bool is_structured() const noexcept
return whether type is structured
Definition json.hpp:2738
a class to store JSON values
Definition json.hpp:1040
basic_json<> json
default JSON class
Definition json.hpp:12369

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 -Isrc 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 2738 of file json.hpp.