xref: /third_party/json/docs/examples/std_hash.cpp (revision c5f01b2f)
1c5f01b2fSopenharmony_ci#include <iostream>
2c5f01b2fSopenharmony_ci#include <iomanip>
3c5f01b2fSopenharmony_ci#include <nlohmann/json.hpp>
4c5f01b2fSopenharmony_ci
5c5f01b2fSopenharmony_ciusing json = nlohmann::json;
6c5f01b2fSopenharmony_ciusing namespace nlohmann::literals;
7c5f01b2fSopenharmony_ci
8c5f01b2fSopenharmony_ciint main()
9c5f01b2fSopenharmony_ci{
10c5f01b2fSopenharmony_ci    std::cout << "hash(null) = " << std::hash<json> {}(json(nullptr)) << '\n'
11c5f01b2fSopenharmony_ci              << "hash(false) = " << std::hash<json> {}(json(false)) << '\n'
12c5f01b2fSopenharmony_ci              << "hash(0) = " << std::hash<json> {}(json(0)) << '\n'
13c5f01b2fSopenharmony_ci              << "hash(0U) = " << std::hash<json> {}(json(0U)) << '\n'
14c5f01b2fSopenharmony_ci              << "hash(\"\") = " << std::hash<json> {}(json("")) << '\n'
15c5f01b2fSopenharmony_ci              << "hash({}) = " << std::hash<json> {}(json::object()) << '\n'
16c5f01b2fSopenharmony_ci              << "hash([]) = " << std::hash<json> {}(json::array()) << '\n'
17c5f01b2fSopenharmony_ci              << "hash({\"hello\": \"world\"}) = " << std::hash<json> {}("{\"hello\": \"world\"}"_json)
18c5f01b2fSopenharmony_ci              << std::endl;
19c5f01b2fSopenharmony_ci}
20