Squashed 'external/json/' content from commit 9cca280a4

git-subtree-dir: external/json
git-subtree-split: 9cca280a4d0ccf0c08f47a99aa71d1b0e52f8d03
This commit is contained in:
Simone
2024-01-23 08:40:40 +01:00
commit b9112977b0
1090 changed files with 174859 additions and 0 deletions

View File

@@ -0,0 +1,37 @@
#include <iostream>
#include <nlohmann/json.hpp>
using json = nlohmann::json;
namespace ns
{
// a simple struct to model a person
struct person
{
std::string name;
std::string address;
int age;
};
} // namespace ns
namespace ns
{
void from_json(const json& j, person& p)
{
j.at("name").get_to(p.name);
j.at("address").get_to(p.address);
j.at("age").get_to(p.age);
}
} // namespace ns
int main()
{
json j;
j["name"] = "Ned Flanders";
j["address"] = "744 Evergreen Terrace";
j["age"] = 60;
auto p = j.template get<ns::person>();
std::cout << p.name << " (" << p.age << ") lives in " << p.address << std::endl;
}