Files
json/docs/mkdocs/docs/api/basic_json/is_structured.md
Niels Lohmann b21c345179 Reorganize directories (#3462)
* 🚚 move files
* 🚚 rename doc folder to docs
* 🚚 rename test folder to tests
2022-05-01 09:41:50 +02:00

1.4 KiB

nlohmann::basic_json::is_structured

constexpr bool is_structured() const noexcept;

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

Return value

#!cpp true if type is structured (array or object), #!cpp false otherwise.

Exception safety

No-throw guarantee: this member function never throws exceptions.

Complexity

Constant.

Possible implementation

constexpr bool is_primitive() const noexcept
{
    return is_array() || is_object();
}

Notes

The term structured stems from RFC 8259:

JSON can represent four primitive types (strings, numbers, booleans, and null) and two structured types (objects and arrays).

Note that though strings are containers in C++, they are treated as primitive values in JSON.

Examples

??? example

The following code exemplifies `is_structured()` for all JSON types.

```cpp
--8<-- "examples/is_structured.cpp"
```

Output:

```json
--8<-- "examples/is_structured.output"
```

See also

Version history

  • Added in version 1.0.0.