• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 #include <iostream>
2 #include <nlohmann/json.hpp>
3 
4 using json = nlohmann::json;
5 
6 namespace ns
7 {
8 // a simple struct to model a person
9 struct person
10 {
11     std::string name;
12     std::string address;
13     int age;
14 };
15 } // namespace ns
16 
17 namespace ns
18 {
from_json(const json & j,person & p)19 void from_json(const json& j, person& p)
20 {
21     j.at("name").get_to(p.name);
22     j.at("address").get_to(p.address);
23     j.at("age").get_to(p.age);
24 }
25 } // namespace ns
26 
main()27 int main()
28 {
29     json j;
30     j["name"] = "Ned Flanders";
31     j["address"] = "744 Evergreen Terrace";
32     j["age"] = 60;
33 
34     auto p = j.get<ns::person>();
35 
36     std::cout << p.name << " (" << p.age << ") lives in " << p.address << std::endl;
37 }
38