|
|
@ -53,10 +53,14 @@ void distribution::parse_json(const std::string& json_data) {
|
|
|
|
|
|
|
|
|
|
|
|
// Process JSON keys dynamically
|
|
|
|
// Process JSON keys dynamically
|
|
|
|
for (auto& [key, value] : data.items()) {
|
|
|
|
for (auto& [key, value] : data.items()) {
|
|
|
|
|
|
|
|
try {
|
|
|
|
if (json_map.find(key) != json_map.end()) {
|
|
|
|
if (json_map.find(key) != json_map.end()) {
|
|
|
|
json_map[key](value);
|
|
|
|
json_map[key](value);
|
|
|
|
json_map.erase(key);
|
|
|
|
json_map.erase(key);
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
} catch (...) {
|
|
|
|
|
|
|
|
continue;
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
} catch (const nlohmann::json::parse_error& e) {
|
|
|
|
} catch (const nlohmann::json::parse_error& e) {
|
|
|
|
std::cerr << "JSON parse error in distribution::parse_json: " << e.what() << std::endl;
|
|
|
|
std::cerr << "JSON parse error in distribution::parse_json: " << e.what() << std::endl;
|
|
|
|