Mercurial > minori
view src/core/json.cc @ 347:a0aa8c8c4307
dep/anitomy: port to use UCS-4 rather than wide strings
rationale: wide strings are not the same on every platform, and
might not even be Unicode. (while they usually are, its possible
that they are not)
I was *going* to change StringToInt to use a string stream, but
outputting to an integer doesn't seem to work at all with UCS-4,
even though it ought to, so I just rolled my own that uses the
arabic digits only.
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Sun, 23 Jun 2024 10:32:09 -0400 |
parents | 9b10175be389 |
children |
line wrap: on
line source
#include "core/json.h" #include "json/json.hpp" namespace JSON { nlohmann::json GetValue(const nlohmann::json& json, const nlohmann::json::json_pointer& ptr) { if (json.contains(ptr)) return json.at(ptr); else return nlohmann::json(); } bool GetBoolean(const nlohmann::json& json, const nlohmann::json::json_pointer& ptr, bool def) { if (json.contains(ptr) && json[ptr].is_boolean()) return json[ptr].get<bool>(); else return def; } } // namespace JSON