LunaHook-mirror/LunaHost/GUI/confighelper.h

28 lines
664 B
C
Raw Normal View History

2024-02-09 09:25:26 +08:00
#ifndef LUNA_CONFIG_HELPER
#define LUNA_CONFIG_HELPER
#include<nlohmann/json.hpp>
2024-02-09 09:25:26 +08:00
class confighelper{
std::wstring configpath;
public:
nlohmann::json configs;
2024-02-09 09:25:26 +08:00
confighelper();
~confighelper();
template<class T>
T get(const std::string&key,T default1){
if(configs.find(key)==configs.end())return default1;
return configs[key];
}
template<class T>
void set(const std::string&key,T v){
configs[key]=v;
}
};
template<typename T>
T safequeryjson(const nlohmann::json& js,const std::string& key,const T &defaultv){
if(js.find(key)==js.end()){
return defaultv;
}
return js[key];
}
2024-02-09 09:25:26 +08:00
#endif