12345678910111213141516171819202122232425262728293031323334353637 |
- #include <iostream>
- #include <iomanip>
- #include <nlohmann/json.hpp>
- using json = nlohmann::json;
- using namespace nlohmann::literals;
- int main()
- {
- // the source document
- json source = R"(
- {
- "baz": "qux",
- "foo": "bar"
- }
- )"_json;
- // the target document
- json target = R"(
- {
- "baz": "boo",
- "hello": [
- "world"
- ]
- }
- )"_json;
- // create the patch
- json patch = json::diff(source, target);
- // roundtrip
- json patched_source = source.patch(patch);
- // output patch and roundtrip result
- std::cout << std::setw(4) << patch << "\n\n"
- << std::setw(4) << patched_source << std::endl;
- }
|