nlohmann::json_pointer::operator/¶
// (1)
json_pointeroperator/(constjson_pointer&lhs,constjson_pointer&rhs);
// (2)
json_pointeroperator/(constjson_pointer&lhs,string_ttoken);
// (3)
json_pointeroperator/(constjson_pointer&lhs,std::size_tarray_idx);
- create a new JSON pointer by appending the right JSON pointer at the end of the left JSON pointer
- create a new JSON pointer by appending the unescaped token at the end of the JSON pointer
- create a new JSON pointer by appending the array-index-token at the end of the JSON pointer
Parameters¶
lhs(in)- JSON pointer
rhs(in)- JSON pointer to append
token(in)- reference token to append
array_idx(in)- array index to append
Return value¶
- a new JSON pointer with
rhsappended tolhs - a new JSON pointer with unescaped
tokenappended tolhs - a new JSON pointer with
array_idxappended tolhs
Complexity¶
- Linear in the length of
lhsandrhs. - Linear in the length of
lhs. - Linear in the length of
lhs.
Examples¶
Example
The example shows the usage of operator/.
#include<iostream>
#include<nlohmann/json.hpp>
usingjson=nlohmann::json;
intmain()
{
// create a JSON pointer
json::json_pointerptr("/foo");
// append a JSON Pointer
std::cout<<"\""<<ptr/json::json_pointer("/bar/baz")<<"\"\n";
// append a string
std::cout<<"\""<<ptr/"fob"<<"\"\n";
// append an array index
std::cout<<"\""<<ptr/42<<"\""<<std::endl;
}
Output:
"/foo/bar/baz"
"/foo/fob"
"/foo/42"
Version history¶
- Added in version 3.6.0.
- Added in version 3.6.0. Changed type of
tokentostring_tin version 3.11.0. - Added in version 3.6.0.