add toString method for Value variant

This commit is contained in:
Konstantin Käfer
2014-03-24 14:47:21 +01:00
parent 1455291386
commit 75cd64de58
2 changed files with 11 additions and 0 deletions

View File

@@ -8,6 +8,8 @@ namespace llmr {
typedef util::variant<bool, int64_t, uint64_t, double, std::string> Value;
std::string toString(const Value& value);
Value parseValue(pbf data);
}

View File

@@ -26,3 +26,12 @@ llmr::Value llmr::parseValue(pbf data) {
}
return false;
}
std::string llmr::toString(const llmr::Value& value) {
if (value.is<std::string>()) return value.get<std::string>();
else if (value.is<bool>()) return value.get<bool>() ? "true" : "false";
else if (value.is<int64_t>()) return std::to_string(value.get<int64_t>());
else if (value.is<uint64_t>()) return std::to_string(value.get<uint64_t>());
else if (value.is<double>()) return std::to_string(value.get<double>());
else return "null";
}