Files
kaizen/docs/examples/merge_patch.cpp
Simone b9112977b0 Squashed 'external/json/' content from commit 9cca280a4
git-subtree-dir: external/json
git-subtree-split: 9cca280a4d0ccf0c08f47a99aa71d1b0e52f8d03
2024-01-23 08:40:40 +01:00

42 lines
1.0 KiB
C++

#include <iostream>
#include <nlohmann/json.hpp>
#include <iomanip> // for std::setw
using json = nlohmann::json;
using namespace nlohmann::literals;
int main()
{
// the original document
json document = R"({
"title": "Goodbye!",
"author": {
"givenName": "John",
"familyName": "Doe"
},
"tags": [
"example",
"sample"
],
"content": "This will be unchanged"
})"_json;
// the patch
json patch = R"({
"title": "Hello!",
"phoneNumber": "+01-123-456-7890",
"author": {
"familyName": null
},
"tags": [
"example"
]
})"_json;
// apply the patch
document.merge_patch(patch);
// output original and patched document
std::cout << std::setw(4) << document << std::endl;
}