JSON for Modern C++  3.7.0

◆ contains() [2/2]

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>
bool nlohmann::basic_json::contains ( const json_pointer ptr) const
inline

Check wehther the given JSON pointer ptr can be resolved in the current JSON value.

Note
This method can be executed on any JSON value type.
Parameters
[in]ptrJSON pointer to check its existence.
Returns
true if the JSON pointer can be resolved to a stored value, false otherwise.
Postcondition
If j.contains(ptr) returns true, it is safe to call j[ptr].
Exceptions
parse_error.106if an array index begins with '0'
parse_error.109if an array index was not a number
Complexity^^ Logarithmic in the size of the JSON object.
Example^^ The following code shows an example for contains(). ^^ contains_json_pointer.cpp
Output (play with this example online):^^
true
true
true
true
true
false
false
false
[json.exception.parse_error.106] parse error: array index '01' must not begin with '0'
[json.exception.parse_error.109] parse error: array index 'one' is not a number
^^ The example code above can be translated with
g++ -std=c++11 -Isingle_include doc/examples/contains_json_pointer.cpp -o contains_json_pointer 
See also
contains(KeyT &&) const – checks the existence of a key
Since
version 3.7.0

Definition at line 18461 of file json.hpp.