in mcrouter/options.cpp [118:133]
string toString(const boost::any& value) {
string res;
bool ok = tryToString<int64_t>(value, res) || tryToString<int>(value, res) ||
tryToString<uint32_t>(value, res) || tryToString<size_t>(value, res) ||
tryToString<uint16_t>(value, res) ||
tryToString<unsigned int>(value, res) ||
tryToString<double>(value, res) || tryToString<bool>(value, res) ||
tryToString<vector<uint16_t>>(value, res) ||
tryToString<vector<int16_t>>(value, res) ||
tryToString<string>(value, res) ||
tryToString<vector<string>>(value, res) ||
tryToString<mcrouter::RoutingPrefix>(value, res) ||
tryToString<unordered_map<string, string>>(value, res);
checkLogic(ok, "Unsupported option type: {}", value.type().name());
return res;
}