#include "json.h"

namespace JSON {

std::string GetString(nlohmann::json const& json, nlohmann::json::json_pointer const& ptr) {
	if (json.contains(ptr) && json[ptr].is_string())
		return json[ptr].get<std::string>();
	else return "";
}

int GetInt(nlohmann::json const& json, nlohmann::json::json_pointer const& ptr) {
	if (json.contains(ptr) && json[ptr].is_number())
		return json[ptr].get<int>();
	else return 0;
}

bool GetBoolean(nlohmann::json const& json, nlohmann::json::json_pointer const& ptr) {
	if (json.contains(ptr) && json[ptr].is_boolean())
		return json[ptr].get<bool>();
	else return false;
}

double GetDouble(nlohmann::json const& json, nlohmann::json::json_pointer const& ptr) {
	if (json.contains(ptr) && json[ptr].is_number())
		return json[ptr].get<double>();
	else return 0;
}

}

