template<typename KeyT , typename std::enable_if< not std::is_same< typename std::decay< KeyT >::type, json_pointer >::value, int >::type = 0>
bool nlohmann::basic_json::contains |
( |
KeyT && |
key | ) |
const |
|
inline |
Check whether an element exists in a JSON object with key equivalent to key. If the element is not found or the JSON value is not an object, false is returned.
- Note
- This method always returns false when executed on a JSON type that is not an object.
- Parameters
-
[in] | key | key value to check its existence. |
- Returns
- true if an element with specified key exists. If no such element with such key is found or the JSON value is not an object, false is returned.
- Complexity
- Logarithmic in the size of the JSON object.
- Example
- The following code shows an example for
contains()
.
2 #include <nlohmann/json.hpp>
9 json j_object = R
"( {"key": "value"} )"_json;
10 json j_array = R"( [1, 2, 3] )"_json;
13 std::cout << std::boolalpha <<
14 "j_object contains 'key': " << j_object.contains(
"key") <<
'\n' <<
15 "j_object contains 'another': " << j_object.contains(
"another") <<
'\n' <<
16 "j_array contains 'key': " << j_array.contains(
"key") << std::endl;
Output (play with this example online): j_object contains 'key': true
j_object contains 'another': false
j_array contains 'key': false
The example code above can be translated withg++ -std=c++11 -Isingle_include doc/examples/contains.cpp -o contains
- See also
- find(KeyT&&) – returns an iterator to an object element
-
contains(const json_pointer&) const – checks the existence for a JSON pointer
- Since
- version 3.6.0
Definition at line 18614 of file json.hpp.