Mercurial > minori
view src/core/json.cc @ 137:69db40272acd
dep/animia: [WIP] huge refactor
this WILL NOT compile, because lots of code has been changed
and every API in the original codebase has been removed.
note that this api setup is not exactly permanent...
author | Paper <mrpapersonic@gmail.com> |
---|---|
date | Fri, 10 Nov 2023 13:52:47 -0500 |
parents | d02fdf1d6708 |
children | f88eda79c60a |
line wrap: on
line source
#include "core/json.h" namespace JSON { std::string GetString(const nlohmann::json& json, const nlohmann::json::json_pointer& ptr, std::string def) { if (json.contains(ptr) && json[ptr].is_string()) return json[ptr].get<std::string>(); else return def; } int GetInt(const nlohmann::json& json, const nlohmann::json::json_pointer& ptr, int def) { if (json.contains(ptr) && json[ptr].is_number()) return json[ptr].get<int>(); else return def; } 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; } double GetDouble(const nlohmann::json& json, const nlohmann::json::json_pointer& ptr, double def) { if (json.contains(ptr) && json[ptr].is_number()) return json[ptr].get<double>(); else return def; } } // namespace JSON